Interactive, constraint-network prognostics and diagnostics to control errors and conflicts (IPDN)

ABSTRACT

Methods for interactively preventing and detecting conflicts and errors (CEs) through prognostics and diagnostics. Centralized and Decentralized Conflict and Error Prevention and Detection (CEPD) Logic is developed for prognostics and diagnostics over three types of real-world constraint networks: random networks (RN), scale-free networks (SFN), and Bose-Einstein condensation networks (BECN). A method is provided for selecting an appropriate CEPD algorithm from a plurality of algorithms having either centralized or decentralized CEPD logic, based on analysis of the characteristics of the CEPD algorithms and the characteristics of the constraint network.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority to and is a continuation of U.S.application Ser. No. 13/174,424, filed Jun. 30, 2011, which in turn wasa non-provisional of Provisional Application No. 61/359,994, filed Jun.30, 2010, the entire disclosure of which is incorporated herein byreference.

BACKGROUND OF THE INVENTION

This invention relates to the prediction and detection of conflicts anderrors in a collaborative operational environment, and more particularlyto improved conflict and error prediction and detection (CEPD) systemsand methods employing prognostics and diagnostics.

Error detection is a fundamental challenge in a wide range ofenterprises including systems employed in manufacturing, production,supply, and in service industries. It can be critical to the properoperation of distributed systems that require collaboration amongmultiple participants among whom errors are unavoidable. Extensiveresearch has been devoted to the problem, and yet all known models,methodologies, algorithms, protocols and tools are lacking in onerespect or another, and even basic concepts relating to the properapproach for different systems/networks are not well understood.

This patent specification is organized in chapters, two of which(Chapters 1 and 3) include further background information. While somerelated research and other work are discussed, the work discussed is notnecessarily prior art, and the discussion itself does not constituteprior art and is not to be construed as an admission of prior art.

SUMMARY OF THE INVENTION

The present invention provides, as one aspect thereof, a method ofpreventing and detecting conflicts and errors through prognostics anddiagnostics in a system having a plurality of cooperative units eachconfigured to collaborate with other cooperative units. The methodcomprises modeling the system with a plurality of constraints that mustbe satisfied by cooperative units, wherein the constraints areindicative of potential conflicts and errors in the system and haverelationships indicative of how conflicts and errors propagate betweenunits, and applying conflict and error prevention and detection (CEPD)logic configured to detect conflicts and errors that have occurred, andto identify conflicts and errors before they occur, based on whether theconstraints are satisfied or unsatisfied.

The objects and advantages of the present invention will be moreapparent upon reading the following detailed description in conjunctionwith the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows the relationship between research questions and problemsdescribed herein.

FIG. 2 summarizes three approaches to fault management for processmonitoring.

FIG. 3 is an incidence matrix example.

FIG. 4 shows a P/T net example.

FIG. 5 shows the relationship between a reachable marking M and initialmarking M₀.

FIG. 6 shows an example application of prevention and detection logicfor a Co-U/Co-net in accordance with the present invention.

FIG. 7 shows an example of collaboration among Co-Us.

FIG. 8 shows a comparison of object-oriented and agent-oriented P/Tnets.

FIG. 9 depicts an example of the P/T Net for CEPD.

FIG. 10 depicts a P/T net example of the centralized CEPD Logic.

FIG. 11 depicts a P/T net example of the decentralized CEPD Logic.

FIG. 12 shows the relationships between constraints in a constraintnetwork.

FIG. 13 shows a diagram of the summary of three types of networks thatcan be used to model constraint networks of CEPD; and

FIG. 14 shows a diagram of the experiment results for verification ofthe analytical results for three CEPD approaches.

DESCRIPTION OF PREFERRED EMBODIMENTS

For the purpose of promoting an understanding of the principles of theinvention, reference will now be made to the embodiments illustrated inthe drawings and specific language will be used to describe the same. Itwill nevertheless be understood that no limitation of the scope of theinvention is thereby intended, such alterations and furthermodifications in the illustrated device and such further applications ofthe principles of the invention as illustrated therein beingcontemplated as would normally occur to one skilled in the art to whichthe invention relates.

Chapter 1. Research Background 1.1. Motivation

Conflict and error prognostics and diagnostics are critical indistributed and decentralized operations where e-Business and e-Commerceactivities require collaboration among multiple participants among whomconflicts and errors (CEs) are unavoidable. To prevent, track, detect,trace, diagnose, and resolve CEs are fundamental challenges incollaboration. Various models, methodologies, algorithms, protocols, andtools have been developed to manage CEs.

In previous research, a conflict has been defined as an inconsistencybetween cooperative units (Co-Us)' goals, dependent tasks, associatedactivities, or plans of sharing resources (Yang, 2004). According tothis definition, a conflict occurs whenever an inconsistency between twoor more units in a system occurs. An error has been defined as anyinput, output, or intermediate result that has occurred in a system anddoes not meet system specification, expectation, or comparison objective(Klein, 1997). CE detection is most well studied because of its uniqueimportance to collaboration. If CEs in a system are not detected, (1)CEs cannot be diagnosed and resolved; (2) more CEs may occur due topropagation; (3) eventually collaboration among units in the system isdamaged.

The prevalent method to detect conflicts has been using layeredconstraints (Barber et al., 2001; Klein, 1992; Li et al., 2002; Shin etal., 2006). Each unit must satisfy a set of predefined constraints whichcan be categorized into different layers, e.g., goal layer, plan layer,belief layer, and task layer. Any violation of constraints that involvestwo or more units is a conflict. Conflict detection has been mostlystudied in collaborative design (Ceroni and Velasquez, 2003; Jiang andNevill Jr, 2002; Lara and Nof, 2003). The ability to detect conflicts indistributed design activities is vital to their success because multipledesigners tend to pursue individual (local) goals prior to consideringcommon (global) goals.

Various domain-specific methods have been developed to detect errors.Three basic research questions in CE prognostics and diagnostics havenot been well answered, albeit enormous accomplished and ongoingresearch:

-   1. What are conflicts and errors? In most research these two terms    have been used interchangeably. When they are differentiated, their    definition varies according to research context. The detection,    diagnostics, or prognostics method for a conflict is often different    than that for an error. It is necessary to have two terms to    describe two different situations: (1) A constraint is violated by    two or more cooperative units; (2) A constraint is violated by a    single unit or multiple units that do not cooperate. The clear    definition of these two terms is needed for conflict and error    prevention and detection (CEPD);-   2. What are differences between prevention and detection? To prevent    CEs, they must be predicted through prognostics. Detection is the    first step of diagnostics. Differences between prevention and    detection are not as clear as they seem to be, however, and both    concepts are not formally defined. Some CEs may not be preventable    or detectable, i.e., it is unknown when and where the CEs (will)    occur due to limited resources;-   3. What is the influence of CE propagation on prognostics and    diagnostics? CEs (1) may be caused by other CEs through propagation,    and (2) can propagate and cause more CEs. Both prognostics and    diagnostics require the analysis of CE propagation to prevent CEs    and identify causes of CEs, respectively. Compared to diagnostics,    prognostics was less studied.

In this research, an agent-based modeling approach is explored toformally model a system for CEPD. The CEPD logic is developed based onprevious work. The analytical methods and simulation experiments areused to validate the methodology. Four performance measures are definedto evaluate the CEPD logic and compare it with the Traditional CEPDAlgorithm. Results show that (1) the agent-based modeling approach issuitable for CEPD in various systems/networks, and (2) the CEPD logicoutperforms the Traditional CEPD Algorithm.

1.2. Research Problems and Questions

The purpose of this research is to develop and apply CEPD logic toprevent and detect CEs. The prevention logic is applied to analyze CEpropagation to prevent CEs that may occur. The detection logic isapplied to analyze CE propagation to identify causes of CEs. A CE can beprevented only if it is prognosed by the prevention logic and there issufficient time to take prevention actions before it occurs. Threeresearch problems are defined:

Research problem 1: Not all CEs that have occurred in a system aredetected.

Research problem 2: Causes of certain CEs are unknown.

Research problem 3: CEs are not prevented through prognostics.

Five research questions are defined to address the three researchproblems:

-   1. How to define and differentiate conflicts and errors? CEs must be    defined before they can be prevented and detected. It is critical to    differentiate between conflicts and errors for error recovery and    conflict resolution;-   2. How to detect CEs with the detection logic? Assuming the answer    to research question 1 is known, there are different ways to detect    CEs in a system with multiple units and different types of    relationship between the units. This research question is related to    research problem 1;-   3. How to analyze CE propagation for CE prognostics and diagnostics?    CEs detected with the detection logic (a) may be caused by other CEs    that have not been detected through propagation; (b) may cause other    CEs through propagation. This question can be defined with two    sub-questions:    -   3.1 How to prognose CEs which are caused by CEs that have        already occurred with the prevention logic? CE prognostics is a        process to prognose and prevent CEs through analysis of CE        propagation;    -   3.2 How to detect CEs that cause other CEs to occur with the        detection logic? CE diagnostics is a process to identify causes        of CEs through analysis of CE propagation;-   4. Different CEPD logic may be developed to answer the above three    research questions. It is necessary to evaluate different CEPD logic    to help understand how well they perform in different systems. This    question is related to all three research problems. Specifically, it    is important to know:    -   4.1 What are appropriate performance measures?    -   4.2 Which CEPD logic minimizes CEPD time for a system?    -   4.3 How to detect, diagnose, and prognose as many CEs as        possible in a system? (The coverage ability of CEPD logic)    -   4.4 Which CEPD logic prognoses the maximum number of CEs and        minimizes the damage caused by CEs? CEs that occur at t and are        detected at t₁ (t≦t₁) cause damages to a system. CEs that will        occur can be prevented if they are prognosed early enough to        allow sufficient time for prevention.-   5. What is the best CEPD logic for different systems? According to    the answers to research question 4, the best logic for different    systems needs to be determined. This question is related to all    three research problems.

FIG. 1 shows the relationship between the five research questions andthree research problems.

1.3. Research Assumptions and Significance

Three basic research assumptions are as follows:

-   1. A system can be modeled with constraints that determine potential    CEs;-   2. Relationships between constraints determine how CEs propagate;-   3. Prognostics and diagnostics agents (PDAs) can be deployed at each    system unit for CEPD.

To prevent and detect CEs in a system can significantly

-   1. Improve the quality of products. The success of e-Work    (Nof, 2003) provides a platform on which products are produced with    the highest possible collaboration among distributed agents. The    quality or the consistency of products has been greatly improved    because of the intensive communication and collaboration through    e-Work. CEs still occur and affect collaboration partly because of    more and more distributed and decentralized operations. There has    been always a strong motivation to improve the quality of products    through CE prognostics and diagnostics;-   2. Eliminate waste. There are two types of CEs: (1) CEs need to be    resolved and corrected, and (2) CEs are tolerated in a system and do    not need to be resolved or corrected. Both types of CEs waste system    resources;-   3. Improve the productivity and efficiency of e-activities.    e-activities performed on the e-Work platform respond to the market    quickly, and communicate internally and externally with high    efficiency, E-activities usually have high throughput and provide    relatively consistent products. The existence of CEs deteriorates    the productivity and efficiency by damaging collaboration, slowing    down production/service, and causing system breakdowns. To improve    the productivity and efficiency becomes more important but difficult    because of the highly distributed e-activities and the need of    concurrency.

Chapter 2. Research Objectives 2.1. Objectives

The overall goal of this research is to design and develop effectivemethods to prevent and detect CEs through prognostics and diagnostics.The specific objectives are to:

-   1. Design a model to analyze systems for CEPD;-   2. Design and develop CEPD logic that determines how CEs are    prevented and detected;-   3. Design and develop measures to compare and evaluate different    CEPD approaches in order to identify the optimal approach for a    specific system;-   4. Validate CEPD logic with analyses and experiments;-   5. Develop guidelines of applying CEPD logic to different    systems/networks.

2.2. Organization

CHAPTER 3 reviews related work. CHAPTER 4 illustrates the developedmethodology. CHAPTER 5 and CHAPTER 6 validate the methodology withanalytical tools and simulation experiments, respectively. CHAPTER 7concludes and summarizes the methodology.

Chapter 3. Review of Related Work 3.1. Error Detection in Assembly andInspection

As the first step to prevent errors, error detection has gained muchattention especially in assembly and inspection. For instance,researchers (Najjari and Steiner, 1997) have studied an integratedsensor-based control system for a flexible assembly cell which includeserror detection function. An error knowledge base has been developed tostore information about previous errors that had occurred in assemblyoperations, and corresponding recovery programs which had been used tocorrect them. The knowledge base provides support to both errordetection and recovery. In addition, a similar machine learning approachto error detection and recovery in assembly has been discussed. Torealize error recovery, failure diagnostics has been emphasized as anecessary step after the detection and before the recovery. It isnoticed that in assembly, error detection and recovery are oftenintegrated.

Automatic inspection has been applied in various manufacturing processesto detect, identify, and isolate errors or defects with computer vision.It is mostly used to detect defects on printed circuit board (Chang etal., 2005; Moganti and Ercal, 1995; Rau and Wu, 2005) and dirt in paperpulps (Calderon-Martinez and Campoy-Cervera, 2006; Duarte et al., 1999).The use of robots has enabled automatic inspection of hazardousmaterials (e.g., Wilson and Berardo, 1995) and in environments wherehuman operators cannot access, e.g., pipelines (Choi et al., 2006).Automatic inspection has also been adopted to detect errors in manyother products such as fuel pellets (Finogenoy et al., 2007), printcontents of soft drink cans (Ni, 2004), oranges (Cai et al., 2006),aircraft components (Erne et al., 1999), and micro drills (Huang et al.,2006). The key technologies involved in automatic inspection include butare not limited to computer or machine vision, feature extraction, andpattern recognition (Chen et al., 1999; Godoi et al., 2005; Khan et al.,2005).

3.2. Fault Detection and Diagnostics for Process Monitoring

Process monitoring, or fault detection and diagnostics in industrialsystems, has become a new sub-discipline within the broad subject ofcontrol and signal processing (Chiang et al., 2001). Four procedures areassociated with process monitoring (Raich and Cinar, 1996), althoughthere appears to be no standard terminology for them: (1) Faultdetection is a procedure to determine if a fault has occurred; (2) Faultidentification is a procedure to identify the observation variables mostrelevant to diagnosing the fault; (3) Fault diagnostics is a procedureto determine which fault has occurred, or the cause of the observedout-of-control status; (4) Process recovery is a procedure to remove theeffect of the fault.

Another term, fault isolation, is also widely used and defined as theprocedure to determine the exact location of the fault or faultycomponent (Gertler, 1998). Fault isolation provides more informationthan a fault identification procedure in which only the observationvariables associated with the fault are determined. Fault isolation doesnot provide as much information as a fault diagnostics procedure,however, in which the type, magnitude, and time of the fault aredetermined (Raich and Cinar, 1996). A commonly used term in theliterature is FDI (fault detection and isolation), which includes bothfault detection and isolation procedures.

Three approaches to manage faults for process monitoring are summarizedin FIG. 2. The analytical approach generates features using detailedmathematical models. Faults can be detected and diagnosed by comparingthe observed features with the features associated with normal operatingconditions directly or after some transformation (Raich and Cinar,1996). The data-driven approach applies statistical tools on largeamount of data obtained from complex systems. The knowledge-basedapproach uses qualitative models to detect and analyze faults. It isespecially suited for systems in which detailed mathematical models arenot available. Among these three approaches, the data-driven approach isconsidered most promising because of its solid theoretical foundationcompared to the knowledge-based approach and its ability to deal withlarge amount data compared to the analytical approach.

The three approaches do not differentiate conflicts from errors. This isbecause (1) a fault that is detected, identified, or diagnosed may notbe the root cause; (2) even if a fault is determined to be the rootcause, systems are not modeled in a way to reveal which units and howthey have caused the fault, i.e., is the fault a conflict or an error?Differentiating between conflicts and errors is important for errorrecovery, conflict resolution, and CE diagnostics.

3.3. Fault Diagnostics Algorithms

The three fault management approaches discussed in 3.2 can be classifiedaccording to the way that a system is modeled. In analytical approach,quantitative models are used which require the complete specification ofsystem components, state variables, observed variables, and functionalrelationships among them for the purpose of fault management. Thedata-driven approach can be considered as the effort to developqualitative models in which previous and current data obtained from asystem are used. Qualitative models usually require less informationabout a system than quantitative models. The knowledge-based approachuses qualitative models and other types of models. For instance, patternrecognition can use multivariate statistical techniques whereas thesigned directed graph is a typical dependence model which represents thecause-effect relationships in the form of a directed graph (Deb et al.,1995).

Similar to algorithms used in quantitative and qualitative models forprocess monitoring, fault detection and diagnostics algorithms have beendeveloped in other areas. Significant research has been conducted tofind optimal and near-optimal test sequences to diagnose faults (Deb etal., 1995; Pattipati and Alexandridis, 1990; Pattipati and Dontamsetty,1992; Raghavan et al., 1999a, b; Shakeri et al., 1995; Shakeri et al.,2000; Tu et al., 2002; Tu et al., 2003; Tu and Pattipati, 2003). Theresearch started with fault diagnostics in electronic andelectromechanical systems with single fault (Pattipati and Alexandridis,1990). It was assumed that there is at most one fault or faulty state ina system at any time. An X-windows based software tool, TEAMS(Testability Engineering And Maintenance System) was developed fortestability analysis of large systems containing as many as 50,000faults and 45,000 test points (Deb et al., 1995). TEAMS can be used tomodel individual systems and generate near-optimal diagnosticprocedures. The research has been expanded to multiple fault diagnostics(Shakeri et al., 1995; Shakeri et al., 2000; Tu et al., 2002; Tu et al.,2003; Tu and Pattipati, 2003) in various real-world systems includingthe space shuttle main propulsion system. Test sequencing algorithmswith unreliable tests (Raghavan et al., 1999b) and multivalued tests (Tuet al., 2003) have also been studied.

The goal of the test sequencing problem is to design a test algorithmthat is able to unambiguously identify the occurrence of any systemstate (faulty or fault-free state) using the test in the test set andminimize the expected testing cost (Pattipati and Alexandridis, 1990).The test sequencing problem belongs to the general class of binaryidentification problems. The problem to diagnose single fault is aperfectly observed Markov decision problem (MDP). The solution to theMDP is a deterministic AND/OR binary decision tree with OR nodes labeledby the suspect set of system states and AND nodes denoting tests(decisions). It is well known that the construction of the optimaldecision tree is an NP-complete problem (Pattipati and Alexandridis,1990). The research conducted integrates concepts from informationtheory and heuristic search to subdue the computational explosion of theoptimal test sequencing problem (Pattipati and Alexandridis, 1990).

To diagnose a single fault in a system, the relationship between thefaulty states and tests can be modeled by directed graph (DG; digraphmodel). Once a system is described in a diagraph model, the full orderdependences among failure states and tests can be captured by a binarytest matrix, also called dependency matrix. The single-fault teststrategy for a system can be expressed with a AND/OR decision tree.

In complex systems with large numbers of components and/or subsystems,it is possible that multiple faults occur at the same time. It istherefore necessary to construct optimal and near-optimal test sequencesfor multiple fault diagnostics. The computational complexity of solvingthe optimal multiple-fault diagnostics problem is super exponential andis much more difficult than the single-fault diagnostics problem(Shakeri et al., 2000). With the assumption that faulty components arereplaced by 100% functional components, an extended strategy to diagnosemultiple faults can be developed.

Other strategies (Tu and Pattipati, 2003) and algorithms (Tu et al.,2002; Tu et al., 2003) have been developed to diagnose multiple faultsusing digraph models, DG=(V,E), which are different than those appliedin other research. The nodes V represent the set of components or tests,and an edge (h_(i),h_(j))∈E represents the fault propagation from h_(i)to h_(j) (Tu et al., 2003). The dependency matrix is derived from thisdigraph model. Other researchers have used digraph model to diagnosefaults in hypercube microprocessors (Feng et al., 1996). The directedgraph is a powerful tool to describe dependences among systemcomponents. Several important issues have been brought up in light ofthe intensive research on test sequencing problem:

-   1. The order of dependences. The first-order cause-effect dependence    between two nodes, i.e., how a faulty node affects another node    directly, is the simplest dependence relationship between two nodes.    Earlier research did not consider the dependences among nodes    (Pattipati and Alexandridis, 1990; Pattipati and Dontamsetty, 1992)    and fault propagation was not studied as part of fault diagnostics.    In most recent research, different algorithms and test strategies    have been developed after considering not only the first-order, but    also high-order dependences among nodes (Tu et al., 2002; Tu et al.,    2003; Tu and Pattipati, 2003). It is clear that knowledge about    dependences among nodes makes difference in fault diagnostics;-   2. Types of faults. Faults can be classified into two categories:    functional faults and general faults. A component in a complex    system may have more than one function. Each function may become    faulty. A component therefore may have one or more functional    faults, each of which involves only one function of the component.    General faults are those that cause faults in all functions of a    component. If a component has a general fault, all its functions are    faulty. Models that describe only general faults are often called    ‘worst case’ models (Deb et al., 1995) because of their poor    diagnosing ability;-   3. Fault propagation time. Systems can be classified into two    categories: zero-time and nonzero-time systems (Tu et al., 2003).    Fault propagation in zero-time systems is instantaneous to an    observer whereas it is several orders of magnitude slower in    nonzero-time systems than the response time of the observer.    Zero-time systems can be abstracted by taking the propagation times    to be zero (Tu et al., 2003).

Another interesting aspect of the research on fault diagnosticsalgorithms is the list of assumptions discussed in several articles:

-   1. At most one fault state (component) in a system at any time    (Pattipati and Alexandridis, 1990). This may be achieved if the    system is tested frequently enough (Shakeri et al., 2000);-   2. All faults are permanent faults (Pattipati and Alexandridis,    1990);-   3. Tests can identify system states unambiguously (Pattipati and    Alexandridis, 1990). A faulty state is either identified or not    identified. Tests do not give conclusions such as “There is a 60%    chance that a faulty state exists.”-   4. Tests are 100% reliable (Raghavan et al., 1999b; Tu et al.,    2003). Both false positive and false negative are zero;-   5. Tests do not have common setup operations (Shakeri et al., 2000).    This assumption was proposed to simplify the cost comparison among    tests;-   6. Faults are independent (Shakeri et al., 2000);-   7. Failure states that are replaced/repaired are 100% functional    (Shakeri et al., 2000);-   8. Systems are zero-time systems (Tu et al., 2003).

There is a critical difference between assumptions 3 and 4. Assumption 3is related to diagnostics ability. When an unambiguous test detects afault, the conclusion is that the fault has occurred with 100%probability. Nevertheless, this conclusion could be wrong if falsepositive is not zero according to the test (diagnostics) reliabilitydescribed in assumption 4. When an unambiguous test does not detect afault, the conclusion is that the fault has not occurred with 100%probability. Similarly, this conclusion could be wrong if false negativeis not zero. Unambiguous tests have better diagnostics ability thanambiguous tests. If a fault has occurred, ambiguous tests conclude thatthe fault has occurred with a probability less than one. Similarly, if afault has not occurred, ambiguous tests conclude that the fault has notoccurred with a probability less than one. In summary, if assumption 3is true, a test gives only two results: a fault has occurred or has notoccurred, always with 100% probability. If both assumptions 3 and 4 aretrue, (1) a fault must have occurred if the test concludes that thefault has occurred; (2) a fault must have not occurred if the testconcludes that the fault has not occurred.

Both the test sequencing and CE detection problems deal with systemswith large amount of components where multiple faults or errors mayoccur at the same time. The major weakness of fault diagnosticsalgorithms discussed here is the centralized CE detection anddiagnostics approach. When a system is large and complex (variousdependences among nodes exist), to develop the optimal test sequencebecomes infeasible due to the time it requires. To develop thenear-optimal test sequence requires less time but the test sequenceincreases detection cost. The characteristics of the centralizedapproach are (1) algorithms and necessary system information arecontrolled by a central control unit; (2) the fault detection isperformed sequentially. An alternative approach is to developdecentralized algorithms that can utilize distributed agents and theireffective collaboration to detect and diagnose CEs. System resources arebetter utilized by allocating detection tasks to distributed agents thatexecute tasks simultaneously and communicate with each other followingprotocols.

There are at least two reasons why centralized CE detection anddiagnostics are widely applied: (1) traditionally, CEs have beendetected only in the output of a system. Decentralized detection is notnecessary. Centralized detection is sufficient and subsequentdiagnostics follows the same framework; (2) systems are often designedin a way that is difficult for decentralized CE detection anddiagnostics. For instance, fault diagnostics algorithms discussed abovewere first developed to diagnose errors in electronic andelectromechanical systems in which PDAs are difficult to apply.

Another drawback of the above fault diagnostics algorithms is the lackof system models. The relationship between nodes and the relationshipbetween faults have not been considered until recently (Tu et al.,2003). Algorithms are expected to perform better if a system isappropriately modeled. The difference may be more apparent for large(many components) and complex (components are dependent on each other)systems than for small (a few components) and simple (components areindependent of each other) systems.

3.4. Research on Conflict and Error Prediction and Detection at PRISMCenter

A conflict has been defined in previous research (Yang, 2004) as aninconsistency between Co-Us' goals, dependent tasks, associatedactivities, or plans of sharing resources. A Co-U is an autonomousworking unit in a system that performs tasks to achieve its local goals,and coordinates with other Co-Us to accomplish the common goals of a setof Co-Us in the system. An error is always restricted to a local scope(within a Co-U). A conflict and error detection model (CEDM) has beendeveloped to detect CEs in a distributed collaborative environmentsupported by conflict and error detection protocol (CEDP). The CEDP isinvoked when a CE is detected or system (collaboration) specificationsare changed. A software agent, conflict and error detection agent(CEDA), is installed in each Co-U of a collaborative network to performCE detection coordinated by CEDP. CEDAs work together to identify CEs byapplying active middleware that supports the CEDP to evaluate thedetection process and exchange detection information among Co-Us.

Active middleware was first developed to optimize the performance ofe-Work interactions in heterogeneous, autonomous, and distributedenvironments (Anussornnitisarn, 2003; Nof, 2003). It has been slightlyrevised and applied to a distributed environment to detect CEs (Yang,2004). Active middleware is an enabling layer of information andinformation flow, database, modeling tools, and decision support system,which has inputs from a distributed yet networked environment. A CEDM isthe integration of active middleware, CEDP, and CEDAs, and its output isthe CEs detected.

An important issue, CE propagation, has been addressed in previousresearch by applying active middleware and agent technologies (Chen andNof, 2007; Yang and Nof, 2004a, b; Yang et al., 2005). An error inside aCo-U's boundary might cause a conflict because of task dependence, orcommon resources sharing between Co-Us. The task dependence can betreated as the interaction between Co-Us when they cooperate to achievea common goal. If the task dependence becomes complicated, which isoften the case in a complex system, CE propagation might occur becauseof the complex correlation between Co-Us. This kind of propagation iscommon in a supply network or a design process. If one participantcannot fulfill a task request (service agreement) because of an internalerror, this error event will also affect other participants' plan andcause a widespread conflict. Consequently, CEs propagate in thecollaboration network and affect more Co-Us if they are not resolved intime, or are incorrectly resolved by a Co-U's local-view solutions. Mostrecently, research at the PRISM (Production, Robotics, and IntegrationSoftware for Manufacturing and Management) Center has focused onfundamental principles to address CE propagation by developingalgorithms and protocols (Chen, 2009; Chen and Nof, 2007, 2009, 2010,2011) based on previous work related to error recovery and conflictresolution (Avila-Soria, 1998; Lara and Nof, 2003; Velasquez et al.,2008).

Two measures, conflict-severity and detect-ability have been defined toevaluate conflict situations and detection abilities respectively (Yangand Nof, 2004a, b). Conflict-severity is a measure of how serious aconflict is and is calculated by summing up all weights of unsatisfiedconstraints that are the benchmark of conflict detection. Thedetect-ability is a function of detection accuracy, cost, and time. Bothmeasures provided necessary decision-making information for detection aswell as resolution. Moreover, a cost-damage analysis has been applied todetermine optimal detection policy. A viability measure has beendeveloped to examine detection policy and evaluate detectionperformance.

In summary, substantial research on CE detection has been conducted atthe PRISM Center. Basic decentralized error prediction and detectionalgorithms (Chen and Nof, 2007, 2010, 2011) and conflict detectionprotocols (Yang and Nof, 2004a, b) have been developed. Differentdetection policies have also been studied. Based on the previousresearch, the current research aims at developing a general methodologythat can be used to model systems and prevent and detect CEs withoptimized logic. The new modeling method and CEPD logic are critical tothe success of a wide range of enterprises where CEs are unavoidable andmust be prevented and detected.

3.5. Petri Nets for CE Detection 3.5.1. Overview of Related Work

Recently, several researchers have applied Petri nets in fault detectionand diagnostics (Chung et al., 2003; Georgilakis et al., 2006; Ushio etal., 1998), fault analysis (Rezai et al., 1995a; Rezai et al., 1995b;Rezai et al., 1997), and conflict detection and resolution (Shiau,2002). Research conducted before 1990 on error detection and recoveryusing Petri nets has been summarized by two researchers (Zhou andDiCesare, 1993). Petri nets are formal modeling and analysis tool fordiscrete event or asynchronous systems. For hybrid systems that haveboth event driven and time driven (synchronous) elements, Petri nets canbe extended to global Petri nets to model both discrete time and eventelements. Petri nets have also been used in conflict detection andresolution (Shiau, 2002) as the extension of goal structure tree (O'Hareand Jennings, 1996) and the E-PERT (Extended Project Estimation andReview Technique) diagram (Barber et al., 2001).

Research on fault detection and diagnostics with Petri nets wasconducted in the context of fault diagnostics in discrete event systems(Sampath et al., 1995; Zad et al., 2003). Using finite state machine(FSM), researchers defined the notion of diagnosability and provided aconstruction procedure for the diagnoser that can detect faults indiagnosable systems (Sampath et al., 1995). To detect and diagnosefaults with Petri nets, some of the places in a Petri net are assumedobservable and others are not. All transitions in the Petri net are alsounobservable. Unobservable places, i.e., faults, indicate that thenumbers of tokens in those places are not observable, whereasunobservable transitions indicate that their occurrences cannot beobserved (Chung et al., 2003; Ushio et al., 1998). The objective of thedetection and diagnostics is to identify the occurrence and type of afault based on observable places within finite steps of observationafter the occurrence of the fault. To detect and diagnose faults withPetri nets, system modeling is complex and time-consuming because faultytransitions and places must be included in a model. Research on thissubject has been mainly the extension of previous work using FSM andgained limited progress.

Conflicts can be categorized into three classes (Barber et al., 2001):goal conflicts, plan conflicts, and belief conflicts. Goal conflicts aremodeled with intended goal structure (Barber et al., 2001) which isextended from goal structure tree (O'Hare and Jennings, 1996). Planconflicts are modeled with E-PERT diagram. Three classes of conflictsare modeled by Petri nets with the help of four basic modules (Zhou etal., 1992), i.e., sequence, parallel, decision, and decision-free, todetect conflicts in a multi-agent system. Each agent's goal and plan aremodeled by separate Petri nets (Shiau, 2002), and many Petri nets areintegrated using a bottom-up approach (Zhou and DiCesare, 1993; Zhou etal., 1992) with three types of operations (Shiau, 2002): AND, OR, andPrecedence. The synthesized Petri net is analyzed to detect conflicts.

The Petri net based approach for conflict detection developed so far hasbeen rather limited. The approach emphasized more on the modeling of asystem and its agents than on the analysis process through whichconflicts are detected. The Petri net model that has been applied isindeed a goal-based or plan-based approach, not an agent-based approach.With the agent-based approach, an agent is modeled only once. In otherapproaches including the Petri net based approach for conflictdetection, an agent is modeled multiple times due to multiple goals,plans, or tasks the agent has. Also, the Petri net based approach is astatic rather than a dynamic approach in which multiple resources ofeach type, different plans according to token attributes, and time fortransitions must be considered and studied.

Research has also been conducted to diagnose faults in discrete eventsystems with decentralized approach (Wenbin and Kumar, 2006).Distributed diagnostics can be performed by either diagnoserscommunicating with each other directly or through a coordinator.Alternatively, diagnostics decisions can be made completely locallywithout combining the information gathered (Wenbin and Kumar, 2006).

To summarize, Petri nets have been applied to fault and conflictdetection in different ways. To detect and diagnose faults, both normaland faulty transitions and places are modeled with Petri nets anddetection and diagnostics are executed by utilizing information fromobservable places. For conflict detection and resolution, only normaltransitions and places are modeled. The prevention and prognostics ofconflicts and errors have not been addressed with Petri nets and therehas been no available approach that can detect both conflicts anderrors. The analysis of Petri nets is difficult and has not been wellstudied, especially for multiple attributes in discrete event systems.The preliminary studies on distributed detection and diagnostics offaults and the use of agent technology for conflict detection areinteresting and in line with current research.

3.5.2. Basic P/T Net Knowledge for CEPD

Place/transition (P/T) nets, or Petri nets, have been intensivelystudied as one of formal methods for verifying the correctness ofsystems since they were originally introduced by Dr. Petri in 1962.Systems are described as mathematical objects in formal methods whichcan handle characteristics such as non-determinism and concurrency of asystem where CEs are difficult to prevent and detect. Eq, 3.1 defines aP/T net as a tuple:N=

P,T,F,W,M ₀

  Eq. 3.1

P is a finite set of places and T is a finite set of transitions. Theplaces P and transitions T are disjoint (P∩T=φ). F⊂(P×T)∪(T×P) is theflow relation. W:((P×T)∪(T×P))→N is the arc weight mapping. W(f)=0 forall f∉F, and W(f)>0 for all f∈F. M₀:P→N is the initial markingrepresenting the initial distribution of tokens.

To define firing condition and firing rule of the P/T net, four basicconcepts are introduced: (1) If

p,t

∈F for a transition tr and a place p, then p is an input place of tr;(2) If

tr, p

∈F for a transition tr and a place p, then p is an output place of tr;(3) Let a∈P∪T. The set •a={a′|

a′,a

∈F} is called the pre-set of a, and the set a•={a′|

a,a′

∈F} is the post-set of a; (4) M(p) denotes the number of tokens in placep in marking M. The firing condition is defined as:

Transition tr∈T is M-enabled (or enabled in M), written as

${M\overset{tr}{\longrightarrow}},$iff Eq. 3.2 is met:M(p)≧W(p,tr),∀p∈•tr  Eq. 3.2

An M-enabled transition tr may fire, producing the successor marking M′,written as

${M\overset{tr}{\longrightarrow}M^{\prime}}.$Eq. 3.3 defines the firing rule:M′(p)=M(p)−W(p,tr)+W(tr,p),∀p∈P  Eq. 3.3

Depending on whether CE states (states that represent conflicts anderrors) are modeled with P/T nets, there are two different ways forCEPD. If CE states (places) are not modeled with P/T nets, theprevention and detection process needs to check if all normal states(states without CEs) in a P/T net can be reached. A CE is detected,diagnosed, or prognosed if a normal state cannot be reached. If CEstates are modeled with P/T nets, the prevention and detection processis aimed at (1) detecting, diagnosing, and prognosing CE states that maybe reached; (2) checking if all normal states can be reached. A CE isdetected, diagnosed, or prognosed if a CE state is reached or a normalstate cannot be reached. The basic task of CEPD process with P/T nets isto determine if certain states can be reached.

A P/T net that includes CE states is often used to detect CEsdynamically. CEs are detected on the fly while the system beingmonitored is executing various tasks. In most cases, the CE detectionprocess only determines if any CE state is reached and does not considernormal states. The main disadvantage of this approach is the difficultyto include all possible CE states of a system in a P/T net. If a CEstate is not modeled with the P/T net, this CE cannot be detected.

On the other hand, a P/T net that includes only normal states is oftenused to predict CEs statically. CEs are predicted by checking if allnormal states can be reached before a system starts executing tasks.This approach can be challenging in terms of the time and cost requiredwhen a P/T net includes a large amount of transitions and states. It issometimes used to detect CEs dynamically. In that case a time stamp isassociated with each state and CEs are detected when a state is notreached by the time specified by the time stamp. Both approaches aresimilar when they are used to detect CEs dynamically.

Several techniques are used to determine if a state can be reached in aP/T net, including reachability graph, coverability graph, andstructural analysis. A reachability graph may include infinite number ofreachable states if it is not a k-safe net (k≧0 is some constant and aninteger) in which no reachable marking contains more than k tokens inany place. The CEPD process will not terminate if a P/T net is notk-safe. Even if a P/T net is k-safe, there can be as many as (k+1)^(|P|)reachable markings (|P| is the total number of places in the net). Onthe other hand, coverability graphs do not provide accurate informationabout reachable states. Structural analysis is therefore preferredbecause it can prove some properties without constructing the graph.Specifically, it is motivated to use place invariants for CEPD.

Let N=

P,T,F,W,M₀

be a P/T net. The corresponding incidence matrix C:P×T→Z is the matrixwhose rows correspond to places and whose columns correspond totransitions. Column tr∈T denotes how the firing of tr affects themarking of the net: C(tr, p)=W(tr,p)−W(p,tr). FIG. 3 shows an example ofincidence matrix corresponding to the P/T net shown in FIG. 4 (circlesrepresent states/places and boxes represent transitions; black dotssignify tokens).

Markings of a P/T net can be written as column vectors, e.g., theinitial marking of the P/T net in FIG. 4 is M₀=(1 0 0 1 1 0 0)^(T).Likewise, firing counts can be written as column vectors with one entryfor each transition. For instance, if each of the transitions tr₁, tr₂,and tr₄ in FIG. 4 fires once, the firing counts are expressed as u=(1 10 1 0 0)^(T). Let M be the new marking after firing these transitions,M=M₀+C•u as shown in FIG. 5 where C is the incidence matrix described inFIG. 3.

For a P/T net N with incidence matrix C, a solution of the equationC^(T)x=0 such that x≠0 is called a place invariant, or P-invariant of NP-invariant is a vector with one entry for each place. For instance,x₁=(1 1 1 0 0 0 0)^(T), x₂=(0 1 1 0 0 1)^(T), and x₃=(0 0 0 1 1 1)^(T)are all P-invariants for the P/T net shown in FIG. 4. Let M be areachable marking of N. Because M=M₀+C•u, Eq. 3.4 holds for anyP-invariant x of N:M ^(T) x=(M ₀ +Cu)^(T) x=M ₀ ^(T) x+(Cu)^(T) x=M ₀ ^(T) x+u ^(T) C ^(T)x=M ₀ ^(T) x  Eq.3.4

P-invariants therefore can be used to determine if certain states in aP/T net cannot be reached. For instance, P-invariant x₂ indicates thatall reachable markings M must satisfy Eq. 3.5:M(p ₃)+M(p ₄)+M(p ₇)=M ₀(p ₃)+M ₀(p ₄)+M ₀(p ₇)=1  Eq. 3.5

P-invariants cannot be used to determine if certain states in a P/T canbe reached. This implies that for a P-invariant x if a marking M isidentified such that M^(T)x=M₀ ^(T)x, it cannot be concluded thatmarking M is reachable. Moreover, it can be difficult to determine themarking of all states when a P/T net includes many states andtransitions.

3.6. Summary of Related Work

Table 3.1 summarizes seven CEPD methods. Three important findings are:

-   1. Five out of seven CEPD methods are centralized methods which are    difficult to implement when (1) there are a large number of    components in a system and (2) many components collaborate with each    other;-   2. Six out of seven CEPD methods can prevent CEs. Among them, only    two methods, CEDM and detection algorithms, have prognostics    ability. A system that has prognostics ability can prevent CEs that    have not occurred according to their relationships with CEs that    have been detected or diagnosed;-   3. Two out of seven CEPD methods can detect conflicts. The other    five methods do not differentiate between conflicts and errors. The    main purpose to differentiate between conflicts and errors is to    identify which components are involved in a CE and how they are    involved. This information provides guidance for error recovery and    conflict resolution, and helps CE diagnostics and prognostics as CEs    are related to each other through the same Co-U(s).

TABLE 3.1 Summary of CEPD Methods Conflict and error prevention anddetection method Knowledge - Diagnostics Detection Analytical Data -driven based algorithms CEDM algorithms Petri net Bibliography Raich andCinar, 1996; * Yang and Nof, Chen and ** Gertler, 1998; 2004a, b; Nof,2007 Chiang et al., 2001 (Yang et al., 2005) Error detection Yes Yes YesYes Yes Yes Yes Conflict detection No No No No Yes No Yes Diagnostics NoNo Yes No Yes Yes No Prevention Yes Yes Yes No Yes Yes Yes Centralized/Centralized Centralized Centralized Centralized DecentralizedDecentralized Centralized Decentralized Main advantage Accurate and Canprocess Do not Accurate and Short detection Accurate and Formal reliablelarge amount require reliable and prediction reliable method of datadetailed time applicable system to various information systems Maindisadvantage Require Rely on the Results are Time - Need further Limitedto State mathematical quantity, subjective consuming for development andsequential explosion models that quality, and and may not large systemsvalidation production/ for large are often not timeliness of be reliableservice lines systems available data * Pattipati and Alexandridis, 1990;Pattipati and Dontamsetty, 1992; Deb et al., 1995; Shakeri et al., 1995;Raghavan et al., 1999a, b; Shakeri et al., 2000; Tu et al., 2002; Tu etal., 2003; Tu and Pattipati, 2003 ** Zhou and DiCesare, 1993; Rezai etal., 1995a; Rezai et al., 1995b; Rezai et al., 1997; Ushio et al., 1998;Barber et al., 2001; Shiau, 2002; Chung et al., 2003; Georgilakis etal., 2006

In summary, the analytical, data-driven, and knowledge-based CEPDmethods are domain-specific methods. They can be applied to a limitednumber of systems. The other two centralized methods, diagnosticsalgorithms and Petri net, are generic methods but do not considerrelationships between CEs and cannot prognose or diagnose CEs. Thecurrent research aims at developing both the Centralized CEPD Logic andDecentralized CEPD Logic with the consideration of relationships betweensystem components and between CEs for prognostics and diagnostics.

The Centralized CEPD Logic is developed based on five centralized CEPDmethods. The Decentralized CEPD Logic is developed based on CEDM anddetection algorithms described in Table 3.1. The CEDM requires furtherdevelopment to model relationships between CEs and identify best CEPDlogic. The detection algorithms are limited to sequentialproduction/service lines. The review of related work also providesfoundation for system modeling and visualization of the CEPD logic.

Chapter 4. Methodology 4.1. Research Definitions

To clearly model a system, five basic concepts are defined:

Definition 1: Co-U. A cooperative unit, Co-U, is an autonomous workingunit in a system that performs tasks to achieve its local goals, andcollaborate with other Co-Us to accomplish the common goals of a set ofCo-Us in the system. A Co-U can be defined with Eq. 4.1:u(i,t)={π(i,t),

(i,t)}  Eq. 4.1

u(i,t) is Co-U i in the system at time t. i is the index of Co-Us and isa nonnegative integer. The value of i is unique for each Co-U. π(i,t) isa set of constraint(s) in the system at time t that needs to besatisfied by Co-U i without collaborating with other Co-Us. Let con(r,t)denote constraint r in the system at time t. r is a nonnegative integerand the index of constraints. The value of r is unique for eachconstraint. π(i,t) is a set of constraints (con(r_(i),t), con(r₂,t), . .. ) that needs to be satisfied by u(i,t) without collaboration.

(i,t) is Co-U i state at time t that describes what has occurred withCo-U i by time t. It includes necessary and sufficient information todetermine whether or not constraints in π(i,t) are satisfied. Supposeπ(i₁,t) is the constraint set for u(i₁,t) and π(i₂,t) is the constraintset for u(i₂,t) (i₁≠i₂), any constraint con(r₁,t)∈π(i₁,t) andcon(r₂,t)∈π(i₂,t) are different, i.e., con(r₁,t)≠con(r₂,t).

Definition 2: Co-net. A Co-net is a coordination network that enablescooperation, collaboration, and coordination among a group of Co-Us in asystem. A Co-net r is defined with Eq. 4.2:n(r,t)={Ω(r,t),con(r,t),θ(r,t)}  Eq. 4.2

n(r,t) is Co-net r in a system at time t, r is the index of Co-nets andr is a nonnegative integer. The value of is unique for each Co-net. Notethat r is the index of both Co-nets and constraints. Ω(r,t) is a set ofCo-Us in n(r,t) that must collaborate to satisfy con(r,t). Let N(Ω(r,t))denote the number of Co-Us in Co-net r at time t. N(Ω(r,t)) is apositive integer and N(Ω,(r,t))≧2. θ(r,t) is Co-net r state at time tthat describes what has occurred with Co-net r by time t. θ(r,t)includes necessary and sufficient information to determine whether ornot con(r,t) is satisfied.

Constraints and Co-nets have one-to-one relationship. Each constraintcan have one and only one corresponding Co-net. Each Co-net satisfiesone and only one constraint. If a constraint does not have anycorresponding Co-net, it indicates collaboration among Co-Us is notrequired to satisfy the constraint. Any Co-net must include two or moreCo-Us (N(Ω(r,t))≧2). Each Co-net con(r,t) is unique in a system at r andis identified by r. Two Co-nets r₁ and r₂ (r₁≠r₂) may include the sameset of Co-Us (Ω(r₁,t)=Ω(r₂,t), and are still different Co-nets becauseany two constraints in a system are different at r(con(r₁,t)≠con(r₂,t)).

Definition 3: Conflict/Error (CE); Definition 4: Error; Definition 5:Conflict. Let

$\overset{\;{Satisfy}\mspace{11mu}}{\longrightarrow}\mspace{14mu}{and}\mspace{14mu}\underset{\;{Dissatisfy}\mspace{14mu}}{\longrightarrow}$denote that Co-Us/Co-nets satisfy and dissatisfy constraints,respectively. Let CE(r,t) represent any CE. Eq. 4.3 defines a CE:∃CE(r,t),iff con(r,t) is not satisfied, ∀r,t  Eq. 4.3

Let E(u(r,i,t)) and C(n(r,t)) represent an error and a conflict,respectively. Eq. 4.4 defines an error and Eq. 4.5 defines a conflict.

$\begin{matrix}{{\exists{E\left( {u\left( {r,i,t} \right)} \right)}},{{iff}\mspace{14mu}{{\vartheta\left( {i,t} \right)}\underset{\;{Dissatisfy}\mspace{14mu}}{\longrightarrow}{{con}\left( {r,t} \right)}}},{{{con}\left( {r,t} \right)} \in {\pi\left( {i,t} \right)}},{\forall r},i,t} & {{Eq}.\mspace{14mu} 4.4} \\{{\exists{C\left( {n\left( {r,t} \right)} \right)}},{{iff}\mspace{14mu}{{\theta\left( {r,t} \right)}\underset{\;{Dissatisfy}\mspace{14mu}}{\longrightarrow}{{con}\left( {r,t} \right)}}},{\forall r},t} & {{Eq}.\mspace{14mu} 4.5}\end{matrix}$

The purpose of this research is to develop and apply CEPD logic forCo-nets and Co-Us in a system (FIG. 6). There are 16 possible states inwhich a CE is either detected (two states), not detected (two states),prognosed (two states), not prognosed (two states), identified as thecause of another CE (four states), or not identified as the cause ofanother CE (four states).

State 1: An error has been detected at t (Eq. 4.6). t₁≦t₂≦t implies t₁is before or at t₂, and t₂ is before or at t. r, i, and t₁ are known att since t₂≦t.∃E(u(r,i,t ₁)), such that r,i, and t ₁ are known at time t ₂ ,∀r,i,t ₁,t ₂ ,t,t ₁ ≦t ₂ ≦t  Eq. 4.6

State 2: An error has not been detected at t (Eq. 4.7). t₁≦t≦t₂ impliest₁ is before or at t, and t is before or at t₂. At lease one of r, i,and t₁ is unknown at t because t≦t₂.∃E(u(r,i,t ₁)), such that at least one of r∪i∪t ₁ is unknown at time t ₂,∀r,i,t ₁ ,t ₂ ,t,t ₁ ≦t≦t ₂  Eq. 4.7

State 3: A conflict has been detected at t (Eq. 4.8).∃C(n(r,t ₁)), such that r and t ₁ are known at time t ₂ ,∀r,t ₁ t ₂ ,t,t₁ ≦t ₂ ≦t  Eq. 4.8

State 4: A conflict has not been detected at t (Eq. 4.9).∃C(n(r,t ₁)), such that at least one of r∪t ₁ is unknown at time t ₂,∀r,t ₁ ,t ₂ ,t,t ₁ ≦t≦t ₂  Eq. 4.9

State 5: An error has been prognosed at t (Eq. 4.10). t₁>t≧t₂ implies t₁is after t, and t is after or at t₂. r, i, and t₁ are known at t becauset≧t₂.∃E(u(r,i,t ₁)), such that r,i and t ₁ are known at time t ₂ ,∀r,i,t ₁ ,t₂ ,t,t ₁ ≧t ₂  Eq. 4.10

State 6: An error has not been prognosed at t (Eq. 4.11). t₁>t₂≧timplies t₁ is after t₂, and t₂ is after or at t. At lease one of r, i,and t₁ is unknown at t because t₂≧t.∃E(u(r,i,t ₁)), such that at least one of r∪i∪t ₁ is unknown at time t ₂,∀r,i,t ₁ t ₂ ,t,t ₁ >t ₂ ≧t  Eq. 4.11

State 7: A conflict has been prognosed at t (Eq. 4.12).∃C(n(r,t ₁)), such that r and t ₁ are known at time t ₂ ,∀r,t ₁ ,t ₂,t,t ₁ >t≧t ₂  Eq. 4.12

State 8: A conflict has not been prognosed at t (Eq. 4.13).∃C(n(r,t ₁)), such that at least one of r∪t ₁ is unknown at time t ₂,∀r,t ₁ ,t ₂ ,t,t ₁ >t ₂ ≧t  Eq. 4.13

State 9: An error has been detected at t as the cause of another error(Eq. 4.14). The CE on the left side of the symbol

$\overset{{Cause}\mspace{14mu}}{\longrightarrow}$is the cause of the CE on the right side of the symbol. For instance, ifE(u(r₁,i₁,t₁)) causes E(u(r₂,i₂,t₂)) directly or indirectly,E(u(r₁,i₁,t₁)) is the cause of E(u(r₂,i₂,t₂) and this relationship isexpressed as

${{E\left( {u\left( {r_{1},i_{1},t_{1}} \right)} \right)}\overset{{Cause}\mspace{14mu}}{\longrightarrow}{E\left( {u\left( {r_{2},i_{2},t_{2}} \right)} \right)}}.$

$\begin{matrix}{\mspace{79mu}{{{\exists{E\left( {u\left( {r_{1},i_{1},t_{1}} \right)} \right)}},{E\left( {u\left( {r_{2},i_{2},t_{2}} \right)} \right)},{{such}\mspace{14mu}{that}}}\text{}\mspace{79mu}{{{{E\left( {u\left( {r_{1},i_{1},t_{1}} \right)} \right)}\overset{{Cause}\mspace{11mu}}{\longrightarrow}{E\left( {u\left( {r_{2},i_{2},t_{2}} \right)} \right)}}\bigcap r_{1}},i_{1},t_{1},r_{2},i_{2},\mspace{20mu}{{{and}\mspace{14mu} t_{2}\mspace{14mu}{are}\mspace{14mu}{known}\mspace{14mu}{at}\mspace{14mu}{time}\mspace{14mu} t_{3}}\bigcap\text{}\mspace{20mu}{{E\left( {u\left( {r_{1},i_{1},t_{1}} \right)} \right)}\overset{{Cause}\mspace{14mu}}{\longrightarrow}{E\left( {u\left( {r_{2},i_{2},t_{2}} \right)} \right)}}}}\mspace{11mu}\mspace{20mu}{{{is}\mspace{14mu}{known}\mspace{14mu}{at}\mspace{14mu}{time}\mspace{14mu} t_{3}},\mspace{20mu}{\forall r_{1}},i_{1},t_{1},r_{2},i_{2},t_{2},t_{3},t,\mspace{20mu}{t_{1} \leq t_{2} \leq t_{3} \leq t},{r_{1} \neq r_{2}}}\mspace{20mu}{{{if}\mspace{14mu} i_{1}} = {{i_{2}\bigcap t_{1}} = t_{2}}}}} & {{Eq}.\mspace{14mu} 4.14}\end{matrix}$

State 10: An error has not been detected at t as the cause of anothererror (Eq. 4.15).

$\begin{matrix}{{{\exists{E\left( {u\left( {r_{1},i_{1},t_{1}} \right)} \right)}},{E\left( {u\left( {r_{2},i_{2},t_{2}} \right)} \right)},{{{such}\mspace{14mu}{{{that}\mspace{14mu}\left( {u\left( {r_{1},i_{1},t_{1}} \right)} \right)}\overset{{Cause}\mspace{14mu}}{\longrightarrow}{E\left( {u\left( {r_{2},i_{2},t_{2}} \right)} \right)}}}\bigcap r_{2}},i_{2},{{and}\mspace{14mu} t_{2}}}{{are}\mspace{14mu}{known}\mspace{14mu}{at}\mspace{14mu}{time}}\mspace{11mu}\;{{t_{3}\bigcap\begin{pmatrix}{{{{at}\mspace{14mu}{least}\mspace{14mu}{one}\mspace{14mu}{of}\mspace{14mu} r_{1}}\bigcup i_{1}\bigcup t_{1}}{\mspace{14mu}\mspace{14mu}}} \\{{{is}\mspace{14mu}{known}\mspace{14mu}{at}\mspace{14mu}{time}}\mspace{11mu}} \\{\;{t_{3}\bigcup{{E\left( {u\left( {r_{1},i_{1},t_{1}} \right)} \right)}\overset{{Cause}\mspace{14mu}}{\longrightarrow}{E\left( {u\left( {r_{2},i_{2},t_{2}} \right)} \right)}}}\mspace{11mu}} \\{\;{{is}\mspace{14mu}{unknown}\mspace{14mu}{at}\mspace{14mu}{time}\mspace{14mu} t_{3}}}\end{pmatrix}},{\forall r_{1}},i_{1},t_{1},r_{2},i_{2},t_{2},t_{3},t,{t_{1} \leq t_{2} \leq t_{3} \leq t},{{r_{1} \neq {r_{2}\mspace{14mu}{if}\mspace{14mu} i_{1}}} = {{i_{2}\bigcap t_{1}} = t_{2}}}}} & {{Eq}.\mspace{14mu} 4.15}\end{matrix}$

State 11: An error has been detected at t as the cause of a conflict(Eq. 4.16).

$\begin{matrix}{{{\exists{E\left( {u\left( {r_{1},i,t_{1}} \right)} \right)}},{C\left( {n\left( {r_{2},t_{2}} \right)} \right)},{{such}\mspace{14mu}{that}}}\mspace{14mu}{{{{E\left( {u\left( {r_{1},i,t_{1}} \right)} \right)}\overset{{Cause}\mspace{14mu}}{\longrightarrow}{C\left( {n\left( {r_{2},t_{2}} \right)} \right)}}\bigcap r_{1}},i,t_{1},r_{2},{{and}\mspace{14mu} t_{2}}}\text{}{{are}\mspace{14mu}{known}\mspace{14mu}{at}\mspace{14mu}{time}}\mspace{11mu}\text{}\;{t_{3}\bigcap{{E\left( {u\left( {r_{1},i,t_{1}} \right)} \right)}\overset{{Cause}\mspace{14mu}}{\longrightarrow}{C\left( {n\left( {r_{2},t_{2}} \right)} \right)}}}\mspace{11mu}\;{{{is}\mspace{14mu}{known}\mspace{14mu}{at}\mspace{14mu}{time}\mspace{14mu} t_{3}},{\forall r_{1}},i,t_{1},r_{2},t_{2},t_{3},t,{t_{1} \leq t_{2} \leq t_{3} \leq t},}} & {{Eq}.\mspace{14mu} 4.16}\end{matrix}$

State 12: An error has not been detected at t as the cause of a conflict(Eq. 4.17).

$\begin{matrix}{{{\exists{E\left( {u\left( {r_{1},i,t_{1}} \right)} \right)}},{C\left( {n\left( {r_{2},t_{2}} \right)} \right)},{{such}\mspace{14mu}{that}}}\mspace{14mu}{{{E\left( {u\left( {r_{1},i,t_{1}} \right)} \right)}\overset{{Cause}\mspace{14mu}}{\longrightarrow}{C\left( {n\left( {r_{2},t_{2}} \right)} \right)}}\bigcap{r_{2}\mspace{14mu}{and}\mspace{14mu} t_{2}}}{{are}\mspace{14mu}{known}\mspace{14mu}{at}\mspace{14mu}{time}}\mspace{11mu}\text{}\;{{t_{3}\bigcap\begin{pmatrix}{{{{at}\mspace{14mu}{least}\mspace{14mu}{one}\mspace{14mu}{of}\mspace{14mu} r_{1}}\bigcup i\bigcup t_{1}}{\mspace{14mu}\mspace{14mu}}} \\{{{is}\mspace{14mu}{{un}{known}}\mspace{14mu}{at}\mspace{14mu}{time}}\mspace{14mu}} \\{{t_{3}\bigcup{{E\left( {u\left( {r_{1},i,t_{1}} \right)} \right)}\overset{{Cause}\mspace{14mu}}{\longrightarrow}{C\left( {n\left( {r_{2},t_{2}} \right)} \right)}}}\mspace{14mu}} \\{{is}\mspace{14mu}{unknown}\mspace{14mu}{at}\mspace{14mu}{time}\mspace{14mu} t_{3}}\end{pmatrix}},{\forall r_{1}},i,t_{1},r_{2},t_{2},t_{3},t,{t_{1} \leq t_{2} \leq t_{3} \leq t}}} & {{Eq}.\mspace{14mu} 4.17}\end{matrix}$

State 13: A conflict has been detected at t as the cause of an error(Eq. 4.18).

$\begin{matrix}{{{\exists{C\left( {n\left( {r_{1},t_{1}} \right)} \right)}},{E\left( {u\left( {r_{2},i,t_{2}} \right)} \right)},{{such}\mspace{14mu}{that}}}\mspace{14mu}{{{{C\left( {n\left( {r_{1},t_{1}} \right)} \right)}\overset{{Cause}\mspace{14mu}}{\longrightarrow}{E\left( {u\left( {r_{2},i,t_{2}} \right)} \right)}}\bigcap r_{1}},t_{1},r_{2},i,{{and}\mspace{14mu} t_{2}}}{{are}\mspace{14mu}{known}\mspace{14mu}{at}\mspace{14mu}{time}}\mspace{14mu}{t_{3}\bigcap{{C\left( {n\left( {r_{1},t_{1}} \right)} \right)}\overset{{Cause}\mspace{14mu}}{\longrightarrow}{E\left( {u\left( {r_{2},i,t_{2}} \right)} \right)}}}{{{is}\mspace{14mu}{known}\mspace{14mu}{at}\mspace{14mu}{time}\mspace{14mu} t_{3}},{\forall r_{1}},t_{1},r_{2},i,t_{2},t_{3},t,{t_{1} \leq t_{2} \leq t_{3} \leq t}}} & {{Eq}.\mspace{14mu} 4.18}\end{matrix}$

State 14: A conflict has not been detected at t as the cause of an error(Eq. 4.19).

$\begin{matrix}{{{\exists{C\left( {n\left( {r_{1},t_{1}} \right)} \right)}},{E\left( {u\left( {r_{2},i,t_{2}} \right)} \right)},{{such}\mspace{14mu}{that}}}\mspace{14mu}{{{{C\left( {n\left( {r_{1},t_{1}} \right)} \right)}\overset{{Cause}\mspace{14mu}}{\longrightarrow}{E\left( {u\left( {r_{2},i,t_{2}} \right)} \right)}}\bigcap r_{2}},i,{{and}\mspace{14mu} t_{2}}}\mspace{14mu}{{are}\mspace{14mu}{known}\mspace{14mu}{at}\mspace{14mu}{time}}\;\text{}{{t_{3}\bigcap\begin{pmatrix}{{{at}\mspace{14mu}{least}\mspace{14mu}{one}\mspace{14mu}{of}\mspace{14mu} r_{1}}\bigcup t_{1}} \\{{is}\mspace{14mu}{unknown}\mspace{14mu}{at}\mspace{14mu}{time}} \\{\;{t_{3}\bigcup{{C\left( {n\left( {r_{1},t_{1}} \right)} \right)}\overset{{Cause}\mspace{14mu}}{\longrightarrow}{E\left( {u\left( {r_{2},i,t_{2}} \right)} \right)}}}\mspace{11mu}} \\{\;{{is}\mspace{14mu}{unknown}\mspace{14mu}{at}\mspace{14mu}{time}\mspace{14mu} t_{3}}}\end{pmatrix}},{\forall r_{1}},t_{1},r_{2},i,t_{2},t_{3},t,{t_{1} \leq t_{2} \leq t_{3} \leq t}}} & {{Eq}.\mspace{14mu} 4.19}\end{matrix}$

State 15: A conflict has been detected at t as the cause of anotherconflict (Eq. 4.20).

$\begin{matrix}{{{\exists{C\left( {n\left( {r_{1},t_{1}} \right)} \right)}},{C\left( {n\left( {r_{2},t_{2}} \right)} \right)},{{such}\mspace{14mu}{that}}}\mspace{14mu}{{{{C\left( {n\left( {r_{1},t_{1}} \right)} \right)}\overset{{Cause}\mspace{14mu}}{\longrightarrow}{C\left( {n\left( {r_{2},t_{2}} \right)} \right)}}\bigcap r_{1}},t_{1},r_{2},{{and}\mspace{14mu} t_{2}}}\mspace{14mu}{{{are}\mspace{14mu}{known}\mspace{14mu}{at}\mspace{14mu}{time}\mspace{14mu} t_{3}}\bigcap{{C\left( {n\left( {r_{1},t_{1}} \right)} \right)}\overset{{Cause}\mspace{14mu}}{\longrightarrow}{C\left( {n\left( {r_{2},t_{2}} \right)} \right)}}}{{{is}\mspace{14mu}{known}\mspace{14mu}{at}\mspace{14mu}{time}\mspace{14mu} t_{3}},{\forall r_{1}},t_{1},r_{2},t_{2},t_{3},t,{t_{1} \leq t_{2} \leq t_{3} \leq t},{{r_{1} \neq {r_{2}\mspace{14mu}{if}\mspace{14mu} t_{1}}} = t_{2}}}} & {{Eq}.\mspace{14mu} 4.20}\end{matrix}$

State 16: A conflict has not been detected at t as the cause of anotherconflict (Eq. 4.21).

$\begin{matrix}{{{\exists{C\left( {n\left( {r_{1},t_{1}} \right)} \right)}},{C\left( {n\left( {r_{2},t_{2}} \right)} \right)},{{such}\mspace{14mu}{that}}}\text{}{{{{C\left( {n\left( {r_{1},t_{1}} \right)} \right)}\overset{{Cause}\mspace{14mu}}{\longrightarrow}{C\left( {n\left( {r_{2},t_{2}} \right)} \right)}}\bigcap r_{2}},{{and}\mspace{14mu} t_{2}}}\mspace{14mu}{{are}\mspace{14mu}{known}\mspace{14mu}{at}\mspace{14mu}{time}}\text{}{{t_{3}\bigcap\begin{pmatrix}{{{at}\mspace{14mu}{least}\mspace{14mu}{one}\mspace{14mu}{of}\mspace{14mu} r_{1}}\bigcup t_{1}} \\{{is}\mspace{14mu}{unknown}\mspace{14mu}{at}\mspace{14mu}{time}} \\{t_{3}\bigcup{{C\left( {n\left( {r_{1},t_{1}} \right)} \right)}\overset{{Cause}\mspace{14mu}}{\longrightarrow}{C\left( {n\left( {r_{2},t_{2}} \right)} \right)}}} \\{\;{{is}\mspace{14mu}{unknown}\mspace{14mu}{at}\mspace{14mu}{time}\mspace{14mu} t_{3}}}\end{pmatrix}},{\forall r_{1}},t_{1},r_{2},t_{2},t_{3},t,{t_{1} \leq t_{2} \leq t_{3} \leq t},{{r_{1} \neq {r_{2}\mspace{14mu}{if}\mspace{14mu} t_{1}}} = t_{2}}}} & {{Eq}.\mspace{14mu} 4.21}\end{matrix}$

4.2. Collaboration Among Co-Us

To prevent and detect CEs in a system, it is important to understandsystem topologies and task dependences (Chen and Nof, 2007). Tasks areproducts and services requested by customers. A system is task-drivenand must complete tasks through networks of Co-Us. A task may be dividedinto subtasks. Each subtask may be further divided into several othersubtasks. A Co-U that is needed to complete a task is assigned one ormore subtasks. Task dependences are ways of collaboration among Co-Us.FIG. 7 shows an example of 23 Co-Us that are networked togetheraccording to task dependences to complete a task requested bycustomer(s).

A task T is requested by customer(s). In total, 23 Co-Us workcollaboratively to complete this task. Six types of collaboration aredefined:

-   1. Collaborate to Provide (CP). Co-Us collaborate to provide    products/services to other Co-Us. For instance, u(4,t) and u(11,t)    collaborate to provide products/services to u(17,t) and u(22,t);    u(1,t), u(17,t), and u(22,t) collaborate to provide    products/services to u(17,t) and u(20,t). A pair of parenthesis with    a superscript ‘P’ denote this type of collaboration. The two    examples can be expressed as (u(4,t),u(11,t))^(P) and    (u(1,t),u(17,t),u(22,t))^(P);-   2. Collaborate to Receive (CR). Co-Us collaborate to receive    products/services from other Co-Us. For instance, u(17,t) and    u(22,t) collaborate to receive products/services from u(4,t) and    u(11,t); u(5,t) and u(22,t) collaborate to receive products/services    from u(19,t). Similarly, a pair of parenthesis with a superscript    ‘R’ denote this type of collaboration. The two examples given can be    expressed as (u(17,t),u(22,0)^(R) and (u(5,t),u(22,t)^(R);-   3. One-to-One (OO) dependence. If one Co-U provides    products/services to the other Co-U, the type of collaboration    between the two Co-Us is OO. For instance, the task dependence    between u(13,t) and u(20,t) in FIG. 7 is OO; u(13,t) provides    products/services to u(20,t) and u(20,t) is dependent on u(13,t) to    complete its tasks. Two Co-Us may have two-way OO dependences, e.g.,    task dependences between u(6,t) and u(16,t). They provide    products/services to each other;-   4. Many-to-One (MO) dependence. If Co-Us collaborate to provide    products/services to the other Co-U, the collaboration between Co-Us    that provide products/services and the Co-U that receives    products/services is MO. Three examples are: (1) two Co-Us together    provide 100 products every hour to the third Co-U; (2) three Co-Us,    Co-U 1, Co-U 2, and Co-U 3, need to provide products A, B, and C,    respectively, to the fourth Co-U at the same speed; (3) two Co-Us    provide continuous services, e.g., electricity and water,    respectively, to the third Co-U to complete a task. As an example in    FIG. 7, u(1,t), u(17,t), and u(22,t) collaborate to provide    products/services to u(20,t);-   5. One-to-Many (OM) dependence. If Co-Us collaborate to receive    products/services from the other Co-U, the collaboration between the    Co-U that provides products/services, and Co-Us that receive    products/services is OM. For instance, a Co-U provides    products/services to two other Co-Us at the same speed, the    collaboration between the first Co-U and two other Co-Us is OM    because the two Co-Us that receive products/services must coordinate    to maintain the same supply speed. There are two OM collaboration    examples in FIG. 7, e.g., the collaboration between u(18,t) and    (u(12,t),u(15,t)^(R). The collaboration between a group of    collaborative Co-Us and a single Co-U is either MO or OM;-   6. Many-to-Many (MM) dependence. If a group of Co-Us collaborate to    provide products/services to the other group of Co-Us which also    collaborate to receive the products/services, the collaboration    between Co-Us from different groups is MM. For instance, three Co-Us    collaborate to provide the same amount of products to two other    Co-Us. FIG. 7 shows a example between (u(4,t),u(11,t))^(P) and    (u(17,t),u(22,t)^(R).

The six types of collaboration are defined in terms of the need ofcollaboration and work flow. They can also be categorized according tothe order of collaboration, i.e., first-order collaboration andhigh-order collaboration. First-order collaboration exists between twoCo-Us if one of two conditions is met: (1) the two Co-Us collaborate toprovide or receive products/services; (2) one of the two Co-Us directlyprovides products/services to the other Co-U. The six types ofcollaboration defined in FIG. 7 is first-order collaboration. Let ‘

’ denote the four types of collaboration (OO, MO, OM, and MM). Forinstance, U(i₁,t)

U(i₂,t) indicates that U(i₁,t) provides products/services to U(i₂,t).

High-order collaboration exists between two Co-Us if one of themindirectly provides products/services to the other. Both first-order andhigh-order collaboration may exist between two Co-Us at the same time.First-order collaboration is most concerned in CEPD and high-ordercollaboration is always analyzed through first-order collaboration. Inthe rest of this dissertation, the term ‘collaboration’ is used to referto first-order collaboration unless otherwise specified. With the abovedefinitions, the six types of collaboration can be describedmathematically. Some examples in FIG. 7 described earlier are:

1. CP: (u(4,t),u(11,t)^(P), (u(1,t),u(17,t),u(22,t))^(P);

2. CR: (u(17,t),u(22,t))^(R), (u(5,t),u(22,t)^(R);

3. OO: u(13,t)

u(20,t), u(6,t)

u(16,t), and u(16,t)

u(6,t);

4. MO: (u(1,t),u(17,t),u(22,t)^(P)

u(20,t);

5. OM: U(18,t)

(u(12,t),u(15,t)^(R);

6. MM: (u(4,t),u(11,t))^(P)

(u(17,t),u(22,t)^(R).

When two Co-Us do not collaborate, they are task independent (TI). Thereare total seven types of relationships among Co-Us: TI, CP, CR, OO, MO,OM, and MM. The TI and any of the other six types of collaboration aremutually exclusive. The six types of collaboration are not mutuallyexclusive. CP is implied if MO or MM exists. CR is implied if OM or MMexists. OO is implied if any of MO, OM, and MM exists. Both MO and OMare implied if MM exists. MO and OM are mutually exclusive.

4.3. Modeling of Constraints

Constraints defined in Section 4.1 can be divided into two categories(Table 4.1): capability constraints and task constraints. A taskconstraint determines what products/services Co-U(s) needs to provide tothe other Co-U(s). A capability constraint determines conditions a Co-Uor a Co-net must meet.

TABLE 4.1 Constraint Examples I II III IV V Constraint RequirementProvider Receiver Type con(3, 10) Two units of part A u(6, 10) u(11, 10)Task con(4, 11) Air pressure between u(6, 11) u(21, 11), Task 2 × 10⁵and u(1, 11), 3 × 10⁵ Pascals u(7, 11) con(2, 7) Temperature is belowu(8, 7) Not Capability 101 F. ° applicable con(6, 7) Temperature isbelow u(11, 7) Not Capability 101 F. ° applicable con(100, 20) 250 carsu(49, 20), u(33, 20), Task u(38, 20), u(34, 20) u(77, 20) con(4, t)Expense is less than u(7, t), Not Capability $2 million u(11, t)applicable

Each constraint consists of three parts:

-   1. Column II—Requirement: A task that must be provided from one Co-U    or a group of Co-Us to the other Co-U or group of Co-Us in the task    constraint; or a condition that must be satisfied by a Co-U in the    capability constraint;-   2. Column III—Provider: One Co-U or a group of Co-Us that provides    the task in the task constraint; or a Co-U/Co-net that needs to meet    the condition in the capability constraint;-   3. Column IV—Receiver: One Co-U or a group of Co-Us that receives    the task in the task constraint. This column does not apply to    capability constraints.

Table 4.2 describes the six constraints in Table 4.1 with six types ofcollaboration. Note that con(2,7) and con(6,7) are two differentconstraints but have the same requirement which needs to be satisfied bydifferent Co-Us.

TABLE 4.2 Collaboration among Co-Us Constraint Co-U/Co-net andCollaboration con(3,10) n(3,10), where Ω(3,10) = {u(6,10), u(11,10)},u(6,10)

 u(11,10) con(4,11) n(4,11), where Ω(4,11) = {u(6,11), u(21,11),u(1,11), u(7,11)} u(6,11)

 (u(6,11), u(21,11), u(1,11), u(7,11))^(R) con(2,7) u(8,7) con(6,7)u(11,7) con (100,20)${{n\left( {100{,20}} \right)},{{{where}\mspace{14mu}{\Omega\left( {100{,20}} \right)}} = \begin{Bmatrix}{{u\left( {49{,20}} \right)},{u\left( {38{,20}} \right)},{u\left( {77{,20}} \right)},} \\{{u\left( {33{,20}} \right)},{u\left( {34{,20}} \right)}}\end{Bmatrix}}}\;$ (u(49,20), u(38,20), u(77,20))^(P)

 (u(33,20), u(34,20)^(P) con(4,t) n(4,t), where Ω(4,t) = {u(7,t),u(11,t)}

Constraints are related through Co-Us. For instance, con(3,10) andcon(4,t) in Table 4.1 are related through u(11,10)/u(11,t). Therelationship between constraints reflects high-order collaborationbetween Co-Us and the relationship between CEs. Two constraints can bedependent or independent. When two constraints con(r₁,t₁) and con(r₂,t₂)are dependent, there are two types of dependences: inclusive andmutually exclusive. con(r₁,t₁) and con(r₂,t₂) are inclusive ifcon(r₁,t₁)⊂con(r₂,t₂). This is defined in Eq. 4.22.p(con(r ₂ ,t ₂) is not satisfied|con(r ₁ ,t ₁) is notsatisfied)=1,p(con(r ₁ ,t ₁) is not satisfied)≠0  Eq. 4.22

Similarly, con(r₂,t₂) and con(r₁,t₁) are inclusive ifcon(r₂,t₂)⊂con(r₁,t₁) (Eq. 4.23).p(con(r ₁ ,t ₁) is not satisfied|con(r ₂ ,t ₂) is notsatisfied)=1,p(con(r ₂ ,t ₂) is not satisfied)≠0  Eq. 4.23

p(con(r₁,t₁) is not satisfied)=p(con(r₂,t₂) is not satisfied) if bothEq. 4.22 and Eq. 4.23 are met. con(r₁,t₁)⊕con(r₂,t₂) indicatescon(r₁,t₁) and con(r₂,t₂) are mutually exclusive, which is defined inEq. 4.24.p(con(r ₂ ,t ₂) is not satisfied|con(r ₁ ,t ₁) is notsatisfied)=0,p(con(r ₁ ,t ₁) is not satisfied)≠0  Eq. 4.24

To meet Eq. 4.24, p(con(r₂,t₂) is not satisfied con(t₁,t₁) is notsatisfied) must be zero, this implies that Eq. 4.25 is met.p(con(r ₁ ,t ₁) is not satisfied|con(r ₂ ,t ₂) is notsatisfied)=0,p(con(r ₂ ,t ₂) is not satisfied)≠0  Eq. 4.25

A constraint con(r₁,t₁) is independent if Eq. 4.26 is met.p(con(r ₁ ,t ₁) is not satisfied|con(r ₂ ,t ₂) is not satisfied)=p(con(r₁ ,t ₁) is not satisfied),∀con(r ₂ ,t ₂)  Eq. 4.26

4.4. CEPD with Place/Transition Nets

The agent-oriented, constraint-based P/T net is developed in thisresearch to model systems and visualize CEPD logic dynamically. The mainadvantages of this approach are:

-   1. A CE is prevented or detected if and only if a constraint is not    satisfied. This ensures that a P/T net includes all possible CE    states as long as their corresponding constraints are modeled and    included in the P/T net;-   2. The agent-oriented approach reduces the number of states need to    be modeled with P/T nets. An agent executes one or more    tasks/processes. Traditional object-oriented approach needs to have    a corresponding state for the input and output of each task/process.    The agent-oriented approach requires only one state for each agent    regardless of how many tasks/processes the agent executes. FIG. 8    illustrates this difference.

In FIG. 8, an agent executes three tasks. tr₁, tr₂, and tr₃ aretransitions and represent three tasks. In the object-oriented P/T netshown on the left, the input and output of each task are represented bytwo different states. The relationship between tasks, i.e., they areexecuted by the same agent, is not evident in the object-oriented P/Tnet. In the agent-oriented P/T net shown on the right, only one state,state p, is needed to represent the output of all three tasks. Anagent-oriented and constraint-based P/T net is defined as following:

-   1. There are two types of states (places): constraint states and    Co-U states. Each constraint or Co-U is represented by a state;-   2. Each constraint state can have at most one token. Initially, each    constraint state has one token;-   3. Each Co-U state can have any nonnegative integer number of    tokens. Initially, each Co-U state is empty and does not have any    token;-   4. There is one type of transitions: constraint transitions. Each    constraint is associated with a transition, which fires if the    constraint is not satisfied;-   5. The pre-set of a transition includes only one element, a    constraint state that represents the constraint;-   6. The post-set of a transition includes all Co-Us that must satisfy    the constraint associated with the transition;-   7. ∀W(p,tr)=1 and ∀W(tr, p)=1. Each constraint state is enabled    initially.

FIG. 9 shows a P/T net example for CEPD. A system has nine Co-Us andfive constraints. Each constraint is represented by a state. The markingof five constraint states M(con(r,t))=1, ∀r, t. Each Co-U is representedby a state. The marking of nine Co-U states M(U(i,t))=0, i=1, . . . , 9.There are five transitions each of which is associated with oneconstraint state and fires if the constraint is not satisfied. Thepre-set of a transition includes one constraint state and the post-setof a transition includes all Co-Us that must satisfy the constraint. Thearc weight W(con(r,t),tr)=1, ∀r, t, tr. All five transitions areenabled. The arc weight W(tr,U(i,t))=1, ∀tr, t, i=1, . . . , 9,tr×U(i,t)∈F.

4.5. CEPD Logic

The CEPD logic can be developed to detect, diagnose, and prognose CEs ina system and the results and flow of the logic can be visualized with aP/T net. The CEPD logic determines how constraints in a system areexamined. For instance, in FIG. 9, if con(4,t₃) is the first one beingevaluated and is not satisfied, tr₄ fires. The number of tokens incon(4,t₃) becomes zero and each of Co-U states U(4,t), U(5,t), U(7,t),and U(9,t) receives one token, which indicates a conflict C(n(4,t₃)) hasbeen detected, diagnosed, or prognosed. Suppose con(23,t₈) is the nextconstraint being evaluated and is not satisfied, tr, fires and thenumber of tokens in con(23,t₈) becomes zero. U(5,t) receives a token andhas two tokens. This indicates an error E(u(23,5,t₈)) has been detected,diagnosed, or prognosed. Four steps can be followed to detect, diagnose,and prognose CEs in a system:

-   1. Determine a time frame within which an invariant model is built    for CEPD. The time frame specifies a beginning time t_(b) from which    the system is being modeled, and an ending time t_(e) at which the    invariant model changes or CEPD terminates;-   2. Model all constraints that need to be satisfied between t_(b) and    t_(e), and their relationships. Constraint relationships are    asynchronous and reflect high-order dependences between and among    Co-Us. Two constraints are different if and only if at least one of    four constraint attributes are different (Table 4.1): (1)    requirement; (2) provider; (3) receiver; (4) time at which they must    be satisfied;-   3. For each constraint, determine which Co-Us must satisfy the    constraint and their relationships which are synchronous and reflect    first-order dependences between and among Co-Us;-   4. Apply the CEPD logic.

The assumption of an invariant model indicates that constraints, Co-Us,and the relationship between constraints do not change between t_(b) andt_(e). Assumptions for the CEPD logic are discussed in the next section.

4.5.1. Assumptions for the CEPD Logic

Following the discussion in Sections 3.3 and 4.5, six assumptions forthe CEPD logic are summarized as follows:

-   1. A system can be modeled with an invariant model;-   2. A CE is either a functional CE or a general CE. CEs may occur    because of (1) faulty functions of a Co-U or multiple Co-Us; (2) one    or more Co-Us stop working (general failure). A CE therefore can be    a functional CE or a general CE. The relationship between CEs is    determined by the relationship between constraints;-   3. Any number of CEs may occur in a system at any time;-   4. All CEs are permanent CEs, i.e., each CE exists in a system since    the time it occurs, unless error recovery or conflict resolution is    performed to recover the error or resolve the conflict;-   5. CE detection techniques can detect CEs unambiguously. The CEPD    logic determines when and where to start CE detection, and which    steps need to be followed to diagnose and prognose CEs. For a    specific CE, different detection techniques can be applied to detect    it. It is assumed that all CE detection techniques can give an    unambiguous result of having a CE or not having a CE;

4.5.2. Centralized CEPD Logic

The Centralized CEPD Logic starts CEPD at a certain time and evaluatesall constraints sequentially. A central control unit executes the logicand controls data and information, which are stored in two tables: aconstraint (C) table and a constraint relationship (R) table. The Ctable describes each constraint and specifies the first-order dependencebetween and among Co-Us. The R table describes the relationship betweenconstraints and specifies the high-order dependence among Co-Us. Table4.3 is an example of C table. Table 4.4 is an example of R table. Theydescribe the system modeled in FIG. 9.

TABLE 4.3 Constraint (C) Table Constraint Requirement Provider Receivercon(1, t₁) Two units of part A u(1, t) u(3, t), u(6, t) con(1, t₂ ) Twounits of part A u(1, t) u(3, t), u(6, t) con(23, t₈) Asset is more than$1.5 u(5, t) Not million applicable con(4, t₃) Expense is less than $2u(5, t), u(4, t), million u(7, t) u(9, t) con(8, t₄) Ten units of part Du(8, t) u(2, t)

TABLE 4.4 Constraint Relationship (R) Table Constraint RelationshipConstraint con(1, t₁) ⊂ con(1, t₂) con(1, t₂) ⊃ con(1, t₁) con(4, t₃) ⊕con(23, t₈) con(8, t₄) Independent con(23, t₈) ⊕ con(4, t₃)

A P/T net can be constructed to represent the Centralized CEPD Logic. Anexample is shown in FIG. 10, which is revised from the example in FIG.9. The Centralized CEPD Logic is defined in Table 4.5.

The places P_((1,t) ₁ ₎, P_((1,t) ₂ ₎, P_((23,t) ₃ ₎, P_((4,t) ₃ ₎, andP_((8,t) ₄ ₎ represent five constraints. Each of the five places have(1) two tokens if the constraint is not examined for CEPD, (2) one tokenif a CE is not detected, diagnosed, or prognosed, and (3) no tokens if aCE is detected, diagnosed, or prognosed. Different numbers of tokensrepresent different CEPD status. The representation can be adjusted ifneeded.

TABLE 4.5 Centralized CEPD Logic Step Logic  1 Check theFirst-In-First-Out (FIFO) queue for scheduled tasks  2 There is at leastone task No task Execute the oldest task (go to Step 5, 6, or 8) Go toStep 3 Start CE detection at TS^(a)  3 Find con(r,t) [M(P_((r,t))) = 2 ∩t ≦ t_(c), t_(c) is the current time]  4 con(r,t) is found con(r,t) isnot found Mark con(r,t) [tr_((r,t)) ¹ fires, M(P_((r,t))) = 1] End oflogic  5 Detect CE  6 C(n(r,t)) is detected E(u(r,i,t)) is detectedC(n(r,t))/E(u(r,i,t)) is not detected Mark con(r,t) [tr_((r,t)) ² fires,Find con(r_(l),t_(x)) from R table M(P_((r,t))) = 0] [con(r_(l),t_(x)) ⊂con(r,t) ∩ M(P_((r) _(l) _(,t) _(x) ₎) = 2]  7 Check C table and markCo-Us con(r_(l),t_(x)) is found Not found of con(r,t) [tr_((r,t)) ³fires and Mark con(r_(l),t_(x)) [tr_((r) _(l) _(,t) _(x) ₎ ^((r,t)) Goto Step 1 increases M(P_(u(i,t))) by 1, fires, M(P_((r) _(l) _(,t) _(x)₎) = 1] [tr^((r,t)) fires u(i,t) ∈ n(r,t) or con(r,t) ∈ π(i,t)] andincreases M(P₀) by 1]  8 Find con(r_(l),t_(x)) from R table Add “ExecuteSteps 6, 7, 8, and Go con(r_(l),t_(x)) ⊕ con(r,t) ∩ M(P_((r) _(l) _(,t)_(x) ₎) = 2 to Step 1 for con(r_(l),t_(x))” to FIFO queue and go to Step6  9 con(r_(l),t_(x)) is found Not found Mark con(r_(l),t_(x)) [tr_((r)_(l) _(,t) _(x) ₎ ^((r,t)) fires, M(P_((r) _(l) _(,t) _(x) ₎) = 1] Go toStep 11 10 Add “Execute Steps 6, 7, 8, and Go to Step 1 forcon(r_(l),t_(x))” to FIFO queue and go to Step 8 Start CE diagnostics 11Find con(r_(m),t_(y)) from R table [con(r,t) ⊂ con(r_(m),t_(y)) ∩ t_(y)≦ t] 12 con(r_(m),t_(y)) is found$\left\lbrack {{{C\left( {n\left( {r_{m},t_{y}} \right)} \right)}/{E\left( {u\left( {r_{m},i,t_{y}} \right)} \right)}}\;\overset{{Cause}\mspace{14mu}}{\rightarrow}{{C\left( {n\left( {r,t} \right)} \right)}/{E\left( {u\left( {r{,i}{,t}} \right)} \right)}}} \right\rbrack$Not found M(P_((r) _(m) _(,t) _(y) ₎) = 2 M(P_((r) _(m) _(,t) _(y) ₎) =0 Go to Mark con(r_(m),t_(y)) [tr_((r) _(m) _(,t) _(y) ₎ ^((r,t)) fires,M(P_((r) _(m) _(,t) _(y) ₎) = 0] Go to Step 11 Step 15 13 Check C tableand mark Co-Us of con(r_(m),t_(y)) [tr_((r) _(m) _(,t) _(y) ₎ ³ firesand increases M(P_(u(i,t))) by 1, u(i,t) ∈ n(r_(m),t_(y)) orcon(r_(m),t_(y)) ∈ π(i,t)] 14 Add “Execute this logic from Step 8 forcon(r_(m),t_(y))” to FIFO queue and go to Step 11 15 Findcon(r_(n),t_(z)) from R table [con(r_(n),t_(z)) ⊂ con(r,t) ∩ t_(z) ≦ t]16 con(r_(n),t_(z)) is found, C(n(r_(n),t_(z)))/E(u(r_(n),i,t_(z))) mayexist Not found M(P_((r) _(n) _(,t) _(z) ₎) = 2 M(P_((r) _(n) _(,t) _(z)₎) ≠ 2 Go to Add “Execute this logic from Step 5 for Go to Step 15 Step17 con(r_(n),t_(z))” to FIFO queue and go to Step 15 Start CEprognostics 17 Find con(r_(k),t_(w)) from R table [con(r,t) ⊂con(r_(k),t_(w)) ∩ t_(w) > t] 18 con(r,t) ⊂ con(r_(k),t_(w)) is foundNot found M(P_((r) _(k) _(,t) _(w) ₎) = 2 M(P_((r) _(k) _(,t) _(w) ₎) =0 Go to Mark con(r_(k),t_(w)) [tr_((r) _(k) _(,t) _(w) ₎ ^((r,t)) fires,M(P_((r) _(k) _(,t) _(w) ₎) = 0] Go to Step 17 Step 1 19 Check C tableand mark Co-Us of con(r_(k),t_(w)) [tr_((r) _(k) _(,t) _(w) ₎ ³ firesand increases M(P_(u(i,t))) by 1, u(i,t) ∈ n(r_(k),t_(w)) orcon(r_(k),t_(w)) ∈ π(i,t)] 20 Add “Execute this logic from Step 8 forcon(r_(k),t_(w))” to FIFO queue and go to Step 17

The Centralized CEPD Logic starts at TS^(a). Suppose it ends at TE^(a)(a is a positive integer and the index of execution). The logic cancomplete four tasks:

-   1. Detect and diagnose CEs that have occurred before and at TE^(a);-   2. Prognose CEs that will occur and are caused by any CEs that have    occurred before or at TE^(a);-   3. Identify causes of each detected and prognosed CE, i.e., evaluate    inclusive constraints of each constraint that is not satisfied;-   4. Use exclusive relationship between constraints to identify    constraints that are satisfied.

The Centralized CEPD Logic can be executed for multiple times, e.g.,between TS¹ and TE¹, TS² and TE², and TS³ and TE³. They satisfy thecondition t_(b)≦TS¹≦TS²≦TS³≦t_(e). Because the logic is executedsequentially, two adjacent executions do not overlap, e.g., TE¹≦TS² andTE²≦TS³.

4.5.3. Decentralized CEPD Logic

The Centralized Logic is usually complex (with many steps) and requiresa large database to store data and information for an entire system. Analternative way of CEPD is to use intelligent agents to perform CEPDtasks in parallel. Each constraint employs a PDA that detects, diagnose,and prognose the CE related to the constraint. The prognostics anddiagnostics of CEs are performed by sending “CE” and “No CE” messagesfrom one PDA to the other. FIG. 11 is an example of a P/T net revisedfrom FIG. 9 to illustrate the Decentralized CEPD Logic. Each agentfollows the logic described in Table 4.6 to perform CEPD tasks.

To apply the Decentralized CEPD Logic, each agent stores information ofa constraint. A C table (e.g., Table 4.3) is not necessary because onlyinformation of one constraint is needed. Each agent maintains a R table.Table 4.4 is divided into four tables, Table 4.7, Table 4.8, Table 4.9,and Table 4.10, each of which is used by an agent. If a constraint isindependent, e.g., con(8,t₄), the agent it employs does not have a Rtable.

The Decentralized CEPD Logic described in Table 4.6 is activated if anagent (r,t) is in one of three situations: (1) receives a “No CE”message; (2) receives a “CE” message; (3) current time t_(c) is equal toor larger than t.

TABLE 4.6 Decentralized CEPD Logic for Agent (r, t) Step Logic Agent (r,t) receives a “No CE” message [M(P_((r) _(l) _(, t) _(x) ₎) = 1 for anytr_((r, t)) ^((r) ^(l) ^(, t) ^(x) ⁾] 1a M(P_((r, t)) ⁰) = 1M(P_((r, t)) ⁰) = 0 Mark con(r, t) [tr_((r, t)) ^((r) ^(l) ^(, t) ^(x) ⁾fires, M(P_((r, t))) = 1] End of logic 2a Find con(r_(l), t_(x)) fromagent (r, t)'s R table [con(r_(l), t_(x)) ⊂ con(r, t)] con(r_(l), t_(x))is found Not found 3a Send a “No CE” message to agent (r_(l), t_(x))[M(P_((r, t))) = 1 End of logic for any tr_((r) _(l) _(, t) _(x) ₎^((r, t))] and go to Step 2a Agent (r, t) receives a “CE” message[M(P_((r, t)) ^((r) ^(l) ^(, t) ^(x) ⁾) = 1 for any P_((r, t)) ^((r)^(l) ^(, t) ^(x) ⁾] 1b M(P_((r, t)) ⁰) = 1 M(P_((r, t)) ⁰) = 0 Markcon(r, t) [tr_((r, t)) ¹ and tr_((r, t)) ^((r) ^(l) ^(, t) ^(x) ⁾ fire,M(P_((r, t))) = 0] End of logic 2b Mark Co-Us of con(r, t) [tr_((r, t))³ fires and increases M(P_(u(i, t))) by 1, u(i, t)ε n(r, t) or con(r,t)ε π(i, t)] 3b Find con(r_(m), t_(y)) from agent (r, t)'s R table[con(r, t)⊂ con(r_(m), t_(y))] con(r_(m), t_(y)) is found Not found 4bSend a “CE” message to agent (r_(m), t_(y)) Go to Step 5b [M(P_((r) _(m)_(, t) _(y) ₎ ^((r, t))) = 1] and go to Step 3b 5b Find con(r_(n),t_(z)) from agent (r, t)'s R table [con(r, t) ⊕ con(r_(n), t_(z))]con(r_(n), t_(z)) is found Not found 6b Send a “No CE” message to agent(r_(n), t_(z))$\left\lbrack {{M\left( {\overset{({r_{n},t_{z}})}{\underset{({r,t})}{P}}❘\overset{({r,t})}{\underset{({r_{n},t_{z}})}{P}}} \right)} = {1\mspace{14mu}{for}\mspace{14mu}{and}\mspace{14mu}{tr}_{({r_{n},t_{z}})}^{({r,t})}}} \right\rbrack\mspace{14mu}{and}\mspace{14mu}{go}\mspace{14mu}{to}\mspace{14mu}{Step}\mspace{14mu} 5b$End of logic t ≦ t_(c), t_(c) is the current time M (P_((r, t)) ⁰) = 1 M(P_((r, t)) ⁰) = 0 1c Detect CE for con(r, t) End of logic C(n(r, t)) orE(u(r, i, t)) is detected Not detected 2c Mark con(r, t) [tr_((r, t)) ¹and tr_((r, t)) ² fire, Mark con(r, t) [tr_((r, t)) ¹ fires,M(P_((r, t))) = 0] and go to Step 2b M(P_((r, t))) = 1] and go to Step2a

TABLE 4.7 Agent con(1, t₁) R Table Constraint Relationship Constraintcon(1, t₁) ⊂ con(1, t₂)

TABLE 4.8 Agent (1, t₂) R Table Constraint Relationship Constraintcon(1, t₂) ⊃ con(1, t₁)

TABLE 4.9 Agent (4, t₃) R Table Constraint Relationship Constraintcon(4, t₃) ⊕ con(23, t₈)

TABLE 4.10 Agent (23, t₈) R Table Constraint Relationship Constraintcon(23, t₈) ⊕ con(4, t₃)

Chapter 5. Analysis of CEPD Approaches for Different Networks

Three CEPD approaches are evaluated in this research, the CentralizedCEPD Logic (Table 4.5), the Decentralized CEPD Logic (Table 4.6), andthe Traditional CEPD Algorithm discussed in Section 3.3. Two maincharacteristics of the Traditional CEPD Algorithm are: (1) it is acentralized approach, i.e., it detects CEs sequentially; (2) it does notconsider the relationship between CEs, i.e., it cannot perform CEprognostics and diagnostics. The CEPD approaches are applied todifferent types of networks whose topologies affect the performance ofthe approaches. This chapter analyzes the three CEPD approaches forthree types of constraint networks.

5.1. Constraint Network

A network is comprised of nodes and links that connect them. In aconstraint network, each constraint is a node. The links describe therelationships between constraints. Two types of links, inclusive andexclusive links, are used to describe the two types of relationships,inclusive and exclusive (defined in 4.3), respectively, between any twoconstraints when they are related. The inclusive link has directions,i.e., con(r₁,t₁)⊂con(r₂,t₂) is different than con(r₂,t₂)⊂con(r₁,t₁),whereas the exclusive link is undirected, i.e., con(r₁,t₁)⊕con(r₂,t₂) isthe same as con(r₂,t₂)⊕con(r₁,t₁). A constraint network can have bothdirected and undirected links.

Directed networks can be cyclic, meaning they contain closed loops oflinks, or acyclic, meaning they do not contain closed loops of links. Aconstraint network can be cyclic, e.g., both con(r₁,t₁)⊂con(r₂,t₂) andcon(r₂,t₂)⊂con(r₁,t₁) exist, or acyclic. Let • denote a constraint, →denote the inclusive relationship, and - denote the exclusiverelationship. There can be five possible relationships between twoconstraints con(r₁,t₁) and con(r₂,t₂) (FIG. 12). Note that the inclusiveand exclusive relationships are mutually exclusive.

The study of network topologies has had a long history stretching backat least in the 1730s. The classic model of network, random network, wasfirst discussed in the early 1950s (Solomonoff and Rapoport, 1951) andwas rediscovered and analyzed in a series of papers published in thelate 1950s and early 1960s (Erdos and Renyi, 1959, 1960, 1961). Mostrandom networks assume that (1) undirected links; (2) at most one linkbetween any two nodes; (3) a node does not have a link to itself. Thedegree of a node, d, is the number of links connected to the node. In arandom network with n nodes and probability p to connect any pair ofnodes, the maximum number of links in the network is ½n(n−1). Theprobability p_(d) that a node has degree d is

${\begin{pmatrix}{n - 1} \\d\end{pmatrix}{p^{d}\left( {1 - p} \right)}^{n - 1 - d}},$which is also the fraction of nodes in the network that have degree d.The mean degree d=(n−1)p. Two important properties of a random networkare:

-   1. Phase transition or bond percolation (Angeles Serrano and De Los    Rios, 2007; Newman, 2003; Newman et al., 2006; Solomonoff and    Rapoport, 1951). There is a phase transition from a fragmented    random network for the mean degree d≦1 to a random network dominated    by a giant component for the mean degree d>1. When the mean degree    d≦1, the number of nodes to which there exist paths from an    arbitrary node is negligible compared to the total number of nodes n    in the network if n is large. When the mean degree d>1, the    percentage of nodes to which there exist paths from an arbitrary    node increases rapidly, starting with slope two. For instance, the    percentage is 80% when d=2. In the language of bond percolation, a    spanning cluster forms when the mean degree d>1.-   2. Critical probability p_(c) (Erdos and Renyi, 1959, 1960, 1961):    for many properties of a random network, there exists a critical    probability p_(c) such that if p grows slower than p_(c) as n→∞, the    network fails to have those properties. Conversely, if p grows    faster than p_(c), the network has those properties. For instance,    the probability of having a triple (a single node connects to two    other nodes) is negligible if p<cn^(−1/2) for some constant c, but    tends to one as n becomes large if p>cn^(−1/2).

The random network is homogeneous in the sense that most nodes in thenetwork have approximately the same number of links. A typical exampleof the random network is the US highway system (Barabasi, 2002; Jeong,2003). If a city is a node and the highway between two cities is a link,most cities in the system connect to approximately the same number ofhighways. Another type of networks that have been extensively studied isthe small-world network (e.g., Watts and Strogatz, 1998). Compared tothe random network, the small-world network has higher clusteringcoefficient, which means that there is a heightened probability that twonodes will be connected directly to one another if they have anotherneighboring node in common. The small-world network model is, however,not a very good model of real networks (Newman et al., 2006). There islittle evidence that any known real-world network is substantiallysimilar to the small-world network.

A common characteristic of both random and small-world networks is thatthe probability of having a highly connected node, i.e., a large d,decreases exponentially with d; nodes with large number of links arepractically absent (Barabasi and Albert, 1999). Another type of networksthat has been studied extensively and does capture the topology of manyreal-world networks is the scale-free network (e.g., Albert, et al.,1999; Barabasi and Albert, 1999; Broder et al., 2000; Price, 1965). Inscale-free networks, the probability p_(d) that a node has d degreefollows a power law distribution, i.e., p_(d)∞d^(−γ), where γ is between2.1 and 4 for real-world scale-free networks (Barabasi and Albert,1999). Compared to the nodes in random and small-world networks, nodeswith large d have a better chance to occur in scale-free networks.

Both random and scale-free networks have small-world effect. Thedistance l between two nodes in a network can be defined as the minimumnumber of links existing in the network that connect the two nodes. Ifthe distance l between nodes in a network scales logarithmically orslower with network size for fixed mean degree, the network hassmall-world effect. It can be shown that l=log n/log(p(n−1)) for randomnetworks (Barabasi, 2002; Newman, 2003), and l=log n/log log n forscale-free networks (Cohen and Havlin, 2003). This implies that nodes inboth random and scale-free networks are close to each other. Anotherimportant characteristic of scale-free networks is that they areresilient to random failures (Albert et al., 2000; Cohen et al., 2000)but are vulnerable to targeted attacks (Cohen et al., 2001).

Another type of networks worth mentioning is the Bose-Einsteincondensation network (Bianconi and Barabasi, 2001b). The Bose-Einsteinnetwork was discovered in an effort to model the competitive nature ofnetworks. Many real-world scale-free networks are formed following therule that older nodes have high probability of obtaining links. This istrue in many real networks. For example, an old business has morecustomers than a new business; a Web site that was established ten yearsago links to many more Web sites than a Web site established one yearago does. This rule is not always true, however, and a very good exampleis Google.com, which is a relatively new Web site but links to so manyother Web sites. Motivated by this and probably many other examples, afitness model (Bianconi and Barabasi, 2001a) was proposed to assign afitness parameter η_(i) to each node i. A node with higher η_(i) hashigher probability to obtain links. η_(i) is randomly chosen from adistribution ρ(η). When ρ(η) follows certain distributions, e.g., ρ(η),(λ+1)(1−η)^(λ), λ>1, a Bose-Einstein condensation network forms.

The Bose-Einstein network shows “winner-takes-all” phenomena observed incompetitive networks. This means that the fittest node acquires a finitefraction of the total links (about 80%, Bianconi and Barabasi, 2001 b)in the network. The fraction is independent of the size of the network.In contrast, the fittest nodes' share of all links decreases to zero inthe scale-free network. The fittest node corresponds to the lowestenergy level in the Bose gas. The fittest node acquires most linkscorresponds to the phenomenon that many particles are at the lowestenergy level when the temperature is close to absolute zero.Bose-Einstein condensation was predicted in 1924 by Bose and Einsteinand was created in 1995 by Cornell and Wicman who received the NobelPrize in Physics 2001 together with Ketterle for their work onBose-Einstein condensation. FIG. 13 summarizes the three types ofnetworks discussed here.

The three types of networks discussed here can be used to modelconstraint networks for CEPD. There are many real-world examples inwhich constraint networks can be modeled with one of the three networks:

-   1. Random network (RN): in project organizations, there exist    multiple projects and a person is often involved in more than one    project. A constrained network can be built in which each project is    a constraint and two projects are related if they need the    participation of the same person. If projects on average have the    same size, i.e., they need the participation of approximately the    same number of people, the constraint network becomes a random    network. Both inclusive and exclusive relationships may exist    between projects. For instance, a CE in a project may indicate that    CEs may occur in another project because the same person is working    on both projects. This is the inclusive relationship. On the other    hand, the failure of one project may indicate that the other project    does not have any problems because the person who works on both    projects can successfully complete one of the two projects. This is    the exclusive relationship;-   2. Scale-free network (SFN): the scale-free constraint network can    be used to model many organizations in which a few managers deal    with many tasks whereas many employees work on a few tasks. Each    manager or employee is a node and nodes are related through links,    i.e., tasks;-   3. Bose-Einstein condensation network (BECN): this type of network    has many real-world applications. For instance, a software program    that is written with object-oriented language can be modeled with    BECN. The whole program is represented by a constraint and the code    for each object is also represented by a constraint. The program is    related to all objects whereas some objects are related to each.

5.2. Definition of Three Constraint Networks

Three types of networks, RN, SFN, and BECN, are studied to validate thenewly developed CEPD logic, evaluate its performance, and compare itwith the Traditional CEPD Algorithm:

-   RN: The degree distribution is

${p_{d} = {\begin{pmatrix}{n - 1} \\d\end{pmatrix}{p^{d}\left( {1 - p} \right)}^{n - 1 - d}}},$p≠0. The mean degree d is (n−1)p;

-   SFN: The degree distribution is

$p_{d} = {\frac{1}{1.20}{d^{- 3}.}}$The exponent −3 is the median of most real-world scale free networks(−2.1˜−4; Barabasi and Albert, 1999). The constant

$c = \frac{1}{1.20}$is fixed by the requirement of normalization, which gives Σp_(k)=1 whenn→∞;

-   BECN: The fittest node has 80% of total links and the other 20%    links are uniformly and randomly assigned to other nodes.

To provide a reliable validation of the CEPD logic, it is desirable thatthe three networks have the same amount of nodes and links. The numberof nodes n is the same for all three networks as n→∞. The degreedistribution function cd^(−γ) of a SFN is a power series (d→∞), and themean degree of a SFN converges if γ>2 and diverges if 1<γ≦2 (Arfken,2005). The mean degree d of the above defined SFN is π²/7.20. Tovalidate the CEPD logic over the RN, it is necessary that(n−1)p=π²/7.20. The mean total number of links of both the SFN and RN isnπ²/14.40. The fittest node in the BECN therefore has nπ²/18 links eachof which is connected to a node that is uniformly and randomly chosen.The rest nπ²/72 links are uniformly and randomly assigned to nodes otherthan the fittest node in the BECN.

5.3. Analysis of CEPD Approaches

To analyze the CEPD approaches, a list of parameters and assumptions isdefined:

-   1. The central control unit in the Centralized CEPD Logic and    Traditional CEPD Algorithm, and agents in the Decentralized CEPD    Logic use various detection techniques to detect CEs. The    reliability of a detection technique is r, 0<r≦1. Both false    positive and false negative are 1−r;-   2. The invariant model for CEPD starts at t_(b)=0 and ends at    t_(e)=T, T>0. The time t that a node con(r,t) needs to be satisfied    is uniformly and randomly chosen from (0,T);-   3. The CEPD starts at time TS (defined in Section 4.5.2). The mean    total number of nodes that must be satisfied before TS is

${{n{\frac{TS}{T}.\mspace{14mu} 0}} < {TS} < T};$

-   4. The mean time for a detection technique to detect a CE is t _(d);-   5. There are three types of information transmission: (1) from an    agent to another agent in the Decentralized CEPD Logic; (2) from a    node to the central control unit in the Centralized CEPD Logic and    Traditional CEPD Algorithm; (3) from the central control unit to a    node in the Centralized CEPD Logic and Traditional CEPD Algorithm.    The mean time for each information transmission is t _(i);-   6. When two nodes, con(r₁,t₁) and con(r₂,t₂), are linked to each    other, they have one of the three types of relationships (FIG. 12),    con(r₁,t₁)⊂con(r₂,t₂), con(r₂,t₂)⊂con(r₁,t₁), and    (con(r₁,t₁)⊂con(r₂,t₂))∩(con(r₂,t₂)⊂con(r₁,t₁)). The other type of    relationships, exclusive relationships con(r₁,t₁)⊕con(r₂,t₂) or    con(r₂,t₂)⊕con(r₁,t₁), is not considered because they are seldom    found in real-world networks. For any node con(r₁,t₁), the    probability of con(r₁,t₁)⊂con(r₂,t₂), con(r₂,t₂)⊂con(r₁,t₁), and    (con(r₁,t₁)⊂con(r₂,t₂))∩(con(r₂,t₂)⊂con(r₁,t₁)) is p_(out), p_(in),    and p_(both), respectively. p_(out)+p_(in)+p_(both)=1;-   7. The probability that a node has a CE is p_(CE), 0<p_(CE)≦1.    p_(CE) is also the probability that a component has CEs. In an    undirected network (p_(both)=1), any node in a component can be    reached by all other nodes in the component. In a directed network    (p_(both)<1), a component exists if any two nodes in the component    are connected through links;-   8. The damage caused by a CE is the product of damage caused by the    CE over one time unit and the total time units for which the CE    exists. The latter is dependent on when the CE is detected or    diagnosed. It is assumed that the damage caused by a CE is zero if    it is prognosed. No more damage is caused by a CE once it is    detected or diagnosed. The mean damage caused by a CE over one time    unit is dA.

The above definitions are the foundation to evaluate the CEPD approacheswith four performance measures:

-   1. CA (coverage ability): the quotient of the number of CEs that are    detected, diagnosed, or prognosed, divided by the total number of    nodes. 0≦CA≦1;-   2. PA (prognostics ability): the quotient of the number of CEs that    are prognosed, divided by the total number of nodes. 0≦PA≦1;-   3. TT (total CEPD time): the time difference between the CEPD    approach stops (TE, defined in 4.5.2) and starts (TS);-   4. TD (total CE damage): the total damage caused by CEs, which is    the sum of the damage caused by all CEs.

The Centralized CEPD Logic starts at TS from Step 3 in Table 4.5 becauseThe FIFO queue is empty at TS. Agents in the Decentralized CEPD Logicstart at TS from Step 1c in Table 4.6. The Traditional CEPD Algorithmstarts at TS and the central control unit randomly and uniformly selectsa node to detect CEs. All three approaches can proceed if and only ifthere is at least one node that needs to be satisfied before TS. Theprobability that no nodes can be found that need to be satisfied beforeTS is

$\left( {1 - \frac{TS}{T}} \right)^{n}.$Because n→∞ and 0<TS<T,

$\left( {1 - \frac{TS}{T}} \right)^{n} = 0.$This indicates that all three approaches start CEPD by detecting CEs atone or more nodes regardless of the value of TS.

5.3.1. Analysis of the Centralized CEPD Logic

After randomly and uniformly selecting a node at Step 4 in Table 4.5Centralized CEPD Logic, the Centralized CEPD Logic moves to Step 5 todetect CEs. There is a p_(CE)r+(1−p_(CE))(1−r) probability that a CE isdetected and a p_(cE)(1−r)+(1−p_(CE))r probability that a CE is notdetected. When a CE is detected, Steps 6 and 7 are executed and thelogic moves to Step 11. Steps 8 through 10 are skipped because theexclusive relationship between constraints is not considered. From Steps11 to 20, the logic finds all nodes that are related to the current nodeand mark them as having CEs. When a CE is not detected, the logicrepeats Steps 6 through 8 and mark all nodes that are related to thecurrent node as not having CEs. Essentially, once a node is found atStep 3, the Centralized CEPD Logic marks all nodes that are related tothe node whether or not a CE is detected.

1. Random Network (RN)

The performance of the Centralized CEPD Logic depends on the mean degreed. According to the phase transition property of RNs,

${\left( {n - 1} \right)p\frac{p_{both}}{p_{in} + p_{out} + p_{both}}} > 1$guarantees a giant component appears in the RN. Since (n−1)p=π²/7.20, itrequires that

${\frac{p_{both}}{p_{in} + p_{out} + p_{both}} > \frac{7.20}{\pi^{2}}} = {0.73.}$The larger

$\left( {n - 1} \right)p\frac{p_{both}}{p_{in} + p_{out} + p_{both}}$is, the larger is the giant component. When p_(in)=p_(out)=0 andp_(both)=1,

$\left( {n - 1} \right)p\frac{p_{both}}{p_{in} + p_{out} + p_{both}}$is the largest,

${\left( {n - 1} \right)p\frac{p_{both}}{p_{in} + p_{out} + p_{both}}} = {{\left( {n - 1} \right)\mspace{14mu} p} = 1.37}$and the giant component includes about 49% of all nodes in the RN. Letp_(g) denote the portion of nodes in the giant component, p_(g) is thefunction of d and can be calculated according to

$\overset{\_}{d} = \frac{- {\log\left( {1 - p_{g}} \right)}}{p_{g}}$(Erdos and Renyi, 1959).

p_(both)=1 indicates that all links in the RN have two directions. TheRN becomes an undirected network. There is a 49% probability that thenode selected at Step 4 belongs to the giant component. Except the onegiant component, there are many smaller components that fill the portionof the RN not occupied by the giant component and their average size is

$\frac{1}{1 - {\left( {n - 1} \right)p} + {\left( {n - 1} \right){pp}_{g}}}$(Bollobas, 2001).

When p_(both)=1, the average size of small components is 3.32.

When 0<p_(both)<1, the RN includes both directed and undirected links.The RN includes only directed links if p_(both)=0. A network is called adirected network if it has only directed links. Research has beenconducted to study the size of the giant component in the directednetwork (Angeles Serrano and De Los Rios, 2007; Broder et al., 2000;Dorogovtsev et al., 2001; Newman et al., 2001; Tadic, 2001). Variousresults have been suggested under different assumptions. Because theconnectivity of directed networks is more complex than the connectivityof undirected networks, there are also various definitions, e.g.,strongly connected component, weakly connected component, IN component,and OUT component. More research is needed to help understand thecharacteristics of directed networks and networks with both directed andundirected links. In the following discussion, a network is a directednetwork if p_(both)<1.

Comparison of TT Between the Directed and Undirected Networks

It can be reasonably assumed that the time needed to find related nodesaccording to the relationship and mark the nodes is negligible comparedto the detection time (mean is t _(d)) and communication time (mean is t_(i)). With this assumption, the mean total CEPD time TT when p_(both)<1is equal to or larger than the TT when p_(both)=1. This conclusion istrue for the RN, SFN, and BECN when the Centralized CEPD Logic isapplied.

Proof:

Suppose there is a directed network (Net 1) with p_(both)<1. It ispossible to replace each directed link in Net 1 with an undirected linkto form an undirected network, Net 2 (p_(both)=1). The TT of Net 2 isnot larger than the of Net 1 because (1) some nodes require detection(Step 5) in Net 1, but do not require detection in Net 2; (2) because of(1), more communication time between nodes and the central control unitis needed in Net 1; (3) because of (1) and (2), more nodes may requireCE detection (Step 3 in Table 4.5) in Net 1. This further increases theTT of Net 1. For each directed network, an corresponding undirectednetwork can be formed. For each pair of such networks, the of thedirected network is larger than or equal to that of the undirectednetwork. Hence, TT _(p) _(both) ₌₁≦TT _(p) _(both) _(<1). This completesthe proof.

Comparison of CA Between the Directed and Undirected Networks

A critical difference between the undirected and directed networks isthat certain nodes (say n′ nodes) that require detection for n′ times(one time for each node) in the directed network require detection foronly one time in the undirected network. Let j be the number of timesStep 5 is executed.

CA _(p) _(both) ₌₁≦CA _(p) _(both) _(<1) when j is the same for thedirected and undirected networks.

This conclusion is true for the RN, SFN, and BECN when the CentralizedCEPD Logic is applied.

Proof:

Suppose there are n nodes that (1) are in the same component and requiredetection once in the undirected network; (2) require detection if timesin the directed network. In the undirected network, CA=1 withprobability p_(CE)r and CA=0 with probability 1−p_(CE)r. CA ₁=p_(CE)r.In the directed network, a CE is detected at a node with the probabilityp_(CE)r. The coverage ability

$\overset{\_}{{CA}_{2}} = {\frac{n^{\prime}p_{CE}r}{n^{\prime}} = {p_{CE}{r.}}}$Apparently, CA₁ =CA₂ =p_(CE)r if there is sufficient time for theCentralized CEPD Logic to complete CEPD for the directed network. Ifthere is no sufficient time, i.e., j<n′,

$\overset{\_}{{CA}_{2}} = {\frac{j\; p_{CE}r}{n^{\prime}} \leq {\overset{\_}{{CA}_{1}}.\mspace{14mu}{\overset{\_}{CA}}_{p_{both} = 1}} \geq {\overset{\_}{CA}}_{p_{both} < 1}}$therefore. This completes the proof.

Comparison of PA Between the Directed and Undirected Networks

First, note that PA≦CA. It can be shown that PA _(p) _(both) ₌₁≧PA _(p)_(both) _(<1) for the RN, SFN, and BECN when j is the same for thedirected and undirected networks.

Proof:

In the undirected network,

${PA} = \frac{m}{n^{\prime}}$with probability p_(CE)r and PA=0 with probability

${1 - {p_{CE}{r.\mspace{14mu}{\overset{\_}{PA}}_{1}}}} = {\frac{m}{n^{\prime}}p_{CE}{r.}}$m is the number of CEs prognosed and 0≦m≦n′. In the directed network,PA₂=0 because each of n′ nodes needs to be detected. PA ₁≧PA₂. Hence PA_(p) _(both) ₌₁≧PA _(p) _(both) _(<1). This completes the proof.

Comparison of TD Between the Directed and Undirected Networks

Because CA _(p) _(both) ₌₁≧CA _(p) _(both) _(<1) and PA _(p) _(both)₌₁≧PA_(p) _(both) _(<1), without rigorous proof, it is clear that TD_(p) _(both) ₌₁≦TD _(p) _(both) _(<1) for the RN, SFN, and BECN when jis the same for the directed and undirected networks.

Calculation of TT when p_(both)=1

For an arbitrary value of TS, at least one node that needs to besatisfied before TS can be found at Step 3 because n→∞. This indicatesj≧1. Note that j is the number of times Step 5 is executed. TT=j(t_(d)+2t _(i)). When j=1, TT=t _(d)+2t _(i). The Centralized CEPD Logicmay stop in two possible situations: (1) no nodes that need to besatisfied before j(t _(d)+2t _(i)) can be found. The logic stops afterStep 5 is executed for j times; (2) there are nodes that are notdetected or marked for CEs when TS+j(t_(d)+2t_(i))≧T. As soon asTS+j(t_(d)+2t_(i))≧T, the logic stops and TT=T−TS. It can be shown thatsituation (1) will not happen if

${\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \in {o(n)}},{{{{i.e}..}{\lim\limits_{n->\infty}\frac{\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}}}{n}}} = 0.}$

Proof:

Let n″ be the number of nodes left in the undirected RN after j steps.n″≧0.51n−3.32(j−1). When

${\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \in {o(n)}},$j∈o(n) because

$j \leq {\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}}.}$If j∈o(n), the probability that no nodes that need to satisfied beforej(t _(d)+2t _(i)) can be found is approximately

$\left( {1 - \frac{{TS} + {j\left( {{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)}}{T}} \right)^{n^{''}}.$When TS+j(t _(d)+2t _(i))≦T,

${\left( {1 - \frac{{TS} + {j\left( {{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)}}{T}} \right)^{n^{\prime}} \leq \left( {1 - \frac{{TS} + {j\left( {{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)}}{T}} \right)^{{0.51n} - {3.32{({k - 1})}}}} = 0.$This indicates at least one node that needs to satisfied before j(t_(d)+2t _(i)), can be found. This completes the proof.

When

${\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \in {o(n)}},{j = {{\left\lbrack \frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right\rbrack\mspace{14mu}{and}\mspace{14mu}{TT}} = {T - {{TS}.}}}}$and TT=T−TS. This conclusion is true for the RN, SFN, and BECN when theCentralized CEPD Logic is applied. j is the largest integer less than

$\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}}.$

Calculation of CA when p_(both)=1

When j=1,

$\overset{\_}{CA} = {{p_{CE}{r\left( {0.49^{2} + {0.51\frac{3.32}{n}}} \right)}} = {0.49^{2}p_{CE}{r.}}}$

When j increases, CA increases. When

$\mspace{79mu}{{\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \in {o(n)}},{\overset{\_}{CA} = {{p_{CE}r \times \left( {{0.49\left( {0.49 + \frac{3.32}{n} + \ldots} \right)} + \mspace{40mu}{0.51\left( {\frac{3.32}{n} + {\frac{0.49n}{n - 3.32}\left( {0.49 + \ldots} \right)} + {\frac{{0.51n} - 3.32}{n - 3.32}\left( {\frac{3.32}{n} + \ldots} \right)}} \right)}} \right)} = {0.49\left( {1 - 0.51^{j}} \right)p_{CE}r}}}}$

If j is large such that 0.51^(j)→0, CA=0.49p_(CE)r. Note that

$j = \left\lbrack \frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right\rbrack$is large and

$\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \in {o(n)}$do not conflict and can both be true at the same time. For example, if

${j = {\left\lbrack \frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right\rbrack = 20}},$0.51^(j)=1.42×10⁻⁶≈0 and

${\lim\limits_{n\rightarrow\infty}\frac{\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}}}{n}} = 0.$The understanding of the result is as follows. When j is large, there isalmost a 100% probability (1−0.51^(j)≈0) that a node belongs to thegiant component is selected at Step 3. The CA obtained from the node is0.49p_(CE)r. The CA obtained from nodes that do not belong to the giantcomponent is negligible because n→∞.

Calculation of PA when p_(both)=1

When j=1,

$\overset{\_}{PA} = {{\overset{\_}{CA}\left( {1 - \frac{{TS} - {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}}{T}} \right)} = {0.49^{2}p_{CE}{{r\left( {1 - \frac{{{{TS}++}{\overset{\_}{t}}_{d}} + {2{\overset{\_}{t}}_{i}}}{T}} \right)}.}}}$

When j increases, PA increases. When

${\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \in {o(n)}},{\overset{\_}{PA} = {{p_{CE}r \times \begin{pmatrix}{{0.49 \times \left( {{0.49\left( {1 - \frac{{TS} - {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}}{T}} \right)} + {\frac{3.32}{n}\left( {1 - \frac{{TS} + {2\left( {{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)}}{T} + \ldots} \right)}} \right)} + {0.51 \times}} \\\begin{pmatrix}{{\frac{3.32}{n}\left( {1 - \frac{{TS} - {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}}{T}} \right)} + {\frac{0.49n}{n - 3.32}\left( {{0.49\left( {1 - \frac{{TS} + {2\left( {{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)}}{T}} \right)} + \ldots} \right)} +} \\{\frac{{0.51n} - 3.32}{n - 3.32}\left( {{\frac{3.32}{n}\left( {1 - \frac{{TS} + {2\left( {{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)}}{T}} \right)} + \ldots} \right)}\end{pmatrix}\end{pmatrix}} = {p_{CE}{r\left( {{0.49\left( {1 - 0.51^{j}} \right)\left( {1 - \frac{TS}{T}} \right)} - {\frac{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}}{T}\left( {1 - 0.51^{j} - {0.49 \times 0.51^{j}j}} \right)}} \right)}}}}$

If j is large such that 0.51^(j)j→0,

$\overset{\_}{PA} = {0.49p_{CE}{{r\left( {1 - \frac{{TS} + {\left( {{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)/0.49}}{T}} \right)}.}}$

Calculation of TD when p_(both)=1

When j=1,

$\overset{\_}{TD} = {{{p_{CE}r\overset{\_}{\;{dA}} \times \left( {{0.49\left( {{0.49n\frac{\left( {{TS} - {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)^{2}}{2T}} + {0.51n\; p_{CE}\frac{T}{2}}} \right)} + {0.51n\; p_{CE}\frac{T}{2}}} \right)} + {{p_{CE}\left( {1 - r} \right)}n\; p_{CE}\frac{T}{2}\overset{\_}{d\; A}} + {\left( {1 - p_{CE}} \right)\left( {{0.49 \times 0.51n\; p_{CE}\frac{T}{2}} + {0.51n\; p_{CE}\frac{T}{2}}} \right)\overset{\_}{dA}}} = {{\frac{T}{2}n\; p_{CE}\overset{\_}{\;{dA}}\left( {\frac{0.49^{2}\left( {{TS} - {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)^{2}r}{T^{2}} + {0.49 \times 0.51p_{CE}r} + {0.51p_{CE}r} + {p_{CE}\left( {1 - r} \right)} + {\left( {1 - p_{CE}} \right)\left( {{0.49 \times 0.51} + 0.51} \right)}} \right)} = {\frac{T}{2}n\; p_{CE}\overset{\_}{\;{dA}}\left( {\frac{0.49^{2}\left( {{TS} - {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)^{2}r}{T^{2}} - {0.49^{2}p_{CE}r} + {0.49^{2}p_{CE}} + 1 - 0.49^{2}} \right)}}}$$\mspace{79mu}\frac{\left( {{TS} - {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)}{2T}$has two parts,

$\frac{{TS} - {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}}{T}\mspace{14mu}{and}\mspace{14mu}{\frac{{TS} + {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}}{2}.\mspace{14mu}\frac{{TS} + {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}}{T}}$is the percentage of nodes that must be satisfied before TS+t _(d)+2t.

$\frac{{TS} - {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}}{2}\; = {{TS} + {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}} - \frac{{TS} + {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}}{2}}$where the second

$\frac{{TS} - {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}}{2}$is the average of the time that nodes must be satisfied; the first

$\frac{{TS} + {k\left( {{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)}}{2}$is the average of the time that CEs exist. When j increases, TDdecreases. When

$\mspace{76mu}{\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \in {{o(n)}\text{:}}}$$\overset{\_}{TD} = {{{0.49\begin{pmatrix}{{0.49n\;{\overset{\_}{dA}\left( {{p_{CE}r\frac{\left( {{TS} + {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)^{2}}{2T}} + {{p_{CE}\left( {1 - r} \right)}\frac{T}{2}}} \right)}} +} \\{{3.32\;{\overset{\_}{dA}\left( {{p_{CE}r\frac{\left( {{TS} + {3\left( {{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)}} \right)^{2}}{2T}} + {{p_{CE}\left( {1 - r} \right)}\frac{T}{2}}} \right)}} + \ldots}\end{pmatrix}} + {0.51\begin{pmatrix}{{3.32\;{\overset{\_}{dA}\left( {{p_{CE}r\frac{\left( {{TS} + {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)^{2}}{2T}} + {{p_{CE}\left( {1 - r} \right)}\frac{T}{2}}} \right)}} +} \\{{\frac{0.49n}{n - 3.32}\;\left( {{0.49n\;{\overset{\rightharpoonup}{dA}\left( {{p_{CE}r\frac{\left( {{TS} + {2\left( {{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)}} \right)^{2}}{2T}} + {{p_{CE}\left( {1 - r} \right)}\frac{T}{2}}} \right)}} + \ldots} \right)} +} \\{\frac{{0.51n} - 3.332}{n - 3.32}\left( {{3.32\;{\overset{\_}{dA}\left( {{p_{CE}r\frac{\left( {{TS} + {2\left( {{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)}} \right)^{2}}{2T}} + {{p_{CE}\left( {1 - r} \right)}\frac{T}{2}}} \right)}} + \ldots} \right)}\end{pmatrix}}} = {{0.49\begin{pmatrix}{{0.49n\;{\overset{\_}{dA}\left( {{p_{CE}r\frac{\left( {{TS} + {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)^{2}}{2T}} + {{p_{CE}\left( {1 - r} \right)}\frac{T}{2}}} \right)}} +} \\{{3.32\;{\overset{\_}{dA}\left( {{p_{CE}r\frac{\left( {{TS} + {2\left( {{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)}} \right)^{2}}{2T}} + {{p_{CE}\left( {1 - r} \right)}\frac{T}{2}}} \right)}} + \ldots}\end{pmatrix}} + {0.51\begin{pmatrix}{{3.32\;{\overset{\_}{dA}\left( {{p_{CE}r\frac{\left( {{TS} + {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)^{2}}{2T}} + {{p_{CE}\left( {1 - r} \right)}\frac{T}{2}}} \right)}} +} \\{{0.49\;\left( {{0.49n\;{\overset{\_}{dA}\left( {{p_{CE}r\frac{\left( {{TS} + {2\left( {{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)}} \right)^{2}}{2T}} + {{p_{CE}\left( {1 - r} \right)}\frac{T}{2}}} \right)}} + \ldots} \right)} +} \\{0.51\left( {{3.32\;{\overset{\_}{dA}\left( {{p_{CE}r\frac{\left( {{TS} + {2\left( {{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)}} \right)^{2}}{2T}} + {{p_{CE}\left( {1 - r} \right)}\frac{T}{2}}} \right)}} + \ldots} \right)}\end{pmatrix}}}}$

There is no simple form for TD. It is possible to calculate the lowerbound of TD:

${\overset{\_}{TD} > {{0.49^{2}n\;\xi} + {0.49\left( {j - 1} \right)3.32\xi} + {0.51 \times 3.32\xi} + {0.51 \times 0.49^{2}n\;\xi} + {0.51 \times 0.49\left( {j - 2} \right)3.32\xi} + {0.51^{2} \times 3.32\xi} + {0.51^{2} \times 0.49^{2}n\;\xi} + {0.51^{3} \times 3.32\xi} + \ldots}} = {{{{0.49^{2}n\;\xi} + {0.51 \times 3.32\xi} + {\sum\limits_{j^{\prime} = 2}^{j}{0.51^{j^{\prime} - 1} \times 0.49^{2}n\;\xi}} + {0.49 \times 3.32 \times 0.51^{j^{\prime} - 2}\left( {j - \left( {j^{\prime} - 1} \right)} \right)} + {0.51^{j^{\prime}} \times 3.32\xi}} > {{\sum\limits_{j^{\prime} = 1}^{j}{0.51^{j^{\prime} - 1} \times 0.49^{2}n\;\xi}} + {0.51^{j^{\prime}} \times 3.32\;\xi}}} = {{\left( {{0.49n} + {\frac{0.51}{0.49}3.32}} \right)\left( {1 - 0.51^{j}} \right)\xi} = {0.49{n\left( {1 - 0.51^{j}} \right)}\xi}}}$

Where

$\xi = {\frac{T}{2}p_{CE}{{\overset{\_}{dA}\left( {\frac{\left( {{TS} + {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)^{2}r}{T^{2}} + 1 - r} \right)}.}}$If j is large such that 0.51^(j)→0,

TD≧0.49nξ. TD has the lower bound 0.49nξ and upper bound

$\frac{T}{2}n\; p_{CE}{{\overset{\_}{dA}\left( {\frac{0.49^{2}\left( {{TS} + {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)^{2}r}{T^{2}} - {0.49^{2}p_{CE}r} + {0.49^{2}p_{CE}} + 1 - 0.49^{2}} \right)}.}$

Scale-Free Network (SFN):

The degree distribution of the SFN is

$p_{j} = {\frac{1}{1.20}{j^{- 3}.}}$Because the exponent is −3, the SFN has a giant component whose sizescales linearly with the size of the network, n, but does not fill thewhole network (Aiello et al., 2000; Newman et al., 2006). The size ofthe giant component can be described as p_(g)n, where 0<p_(g)<1. Besidethe giant component, there are many non-giant components in the SFN. Thesecond largest components have size of θ(log n) (Aiello et al., 2000).Because

${{\lim\limits_{n\rightarrow\infty}\frac{\log\; n}{n}} = 0},$the TT, CA, PA, and TD of the SFN can be analyzed similarly as those ofthe RN.

Bose-Einstein Condensation Network (BECN):

In the BECN, the fittest node has 80% of total links and 20% links areuniformly and randomly assigned to other nodes. The mean total number oflinks is

$\frac{{n\left( {n - 1} \right)}p}{2} = {0.69{n.}}$The fittest node has on average 0.55n links. Each of all other nodes hason average

${\frac{0.55n}{n - 1} + \frac{2 \times 0.14n}{n - 1}} = {\frac{0.83n}{n - 1} \approx {0.83\mspace{14mu}{{nodes}.}}}$nodes. The average size of the giant component is between 0.5517 and0.6317 when p_(both)=1.

Proof:

The average number of nodes, including the fittest node and nodes thatlink to the fittest node directly is 0.55n+1≈0.55n. The nodes that linkto the fittest node directly also link to other nodes. The averagenumber of links between the nodes that link to the fittest node, and thenodes that do not link to the fittest node directly is

${0.55n\frac{2 \times 0.14n}{n - 1}\left( {1 - 0.55} \right)} = {0.55n \times {0.126.}}$There are less than or equal to 0.55n×0.126 nodes that link to thefittest node indirectly and are one node away from the fittest node.This calculation continues and the average total number of nodes thatlink to the fittest node indirectly is less than or equal to0.55n(0.126+0.126²+ . . . )≦0.08n. The size of the giant component istherefore between 0.55n and 0.63n when p_(both)=1. This completes theproof.

Note that all the nodes that do not link to the giant component directlyor indirectly belong to small components because the average number oflinks they have is 0.28. Theorem 1 summarizes the analysis of theCentralized CEPD Logic.

Theorem 1:

the Centralized CEPD Logic has the following properties when it isapplied to the RN, SFN, or BECN if

$\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \in {{o(n)}\text{:}}$

1. The total CEPD time TT_(p) _(both) ₌₁=T_(p) _(both) _(<1)=T+TS;

2. The mean coverage ability CA _(p) _(both) ₌₁≧CA _(p) _(both) _(<1);

3. The mean prognostics ability PA _(p) _(both) ₌₁≧PA _(p) _(both)_(<1);

4. The mean total damage TD _(p) _(both) ₌₁≦TD _(p) _(both) _(<1).

Without the condition

${\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \in {o(n)}},$TT _(p) _(both) ₌₁≦TT _(p) _(both) _(<1). When p_(both)=1, theCentralized CEPD Logic has the following properties if

$\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \in {{o(n)}\mspace{14mu}\left( {j = {\left\lbrack \frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right\rbrack\mspace{14mu}{therefore}}} \right)}$and j is large such that (1−p_(g))^(j)j→0 (j is the number of times Step5 is executed and p_(g) is the portion of nodes that belong to the giantcomponent):

1. The mean coverage ability CA=p_(g)p_(CE)r;

2. The mean prognostics ability

${\overset{\_}{PA} = {p_{g}p_{CE}{r\left( {1 - \frac{{{TS}\left( {{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)}/p_{g}}{T}} \right)}}};$

3. The mean total damage

${{\frac{T}{2}{np}_{CE}\overset{\_}{d\; A}{p_{g}\left( {\frac{\left( {{TS} + {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)^{2}r}{T^{2}} + 1 - r} \right)}} \leq \overset{\_}{TD} \leq {\frac{T}{2}{np}_{CE}\overset{\_}{d\; A}{p_{g}^{2}\left( {\frac{\left( {{TS} + {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)^{2}r}{T^{2}} - {p_{CE}r} + p_{CE} + \frac{1}{p_{g}^{2}} - 1} \right)}\mspace{14mu} p_{g}}} = 0.49$for the RN;

$p_{j} = {\frac{1}{1.20}j^{- 3}}$and 0<p_(g)<1 for the SFN; the fittest node of the BECN has 80% of linksand 0.55≦p_(g)≦0.63 for the BECN.

5.3.2. Analysis of the Decentralized CEPD Logic

With the Decentralized CEPD Logic (Table 4.6), an agent is deployed ateach node. For nodes that need to be satisfied before TS, theircorresponding agents start CEPD from Step 1c. Without rigorous proof, itis clear that the TT, CA, and PA of the undirected (p_(both)=1) RN, SFN,or BECN are larger than or equal to those of the directed(p_(both)<1)RN, SFN, or BECN, respectively. Consequently, the TD of theundirected RN, SFN, or BECN are smaller than or equal to those of thedirected RN, SFN, or BECN, respectively.

Because agents perform CEPD in parallel, the TT of the undirected RN,SFN, or BECN is determined by the TT of the giant component. When the RNhas p_(both)=1, for each node whose agent starts CEPD at TS, there is a0.49 probability that the node belongs to the giant component and a 0.51probability that the node belongs to one of the small components. Theprobability that all nodes that need to be satisfied before TS are fromsmall components is

$0.51^{\frac{TS}{T}n}$where

$\frac{TS}{T}n$is the mean number of nodes that need to satisfied before TS. If

${{\frac{TS}{T}n} \in {\theta(n)}},$i.e.,

${{\lim\limits_{n->\infty}\frac{\frac{TS}{T}n}{n}} = c},$0<c<∞, then

${\lim\limits_{n->\infty}0.51^{\frac{TS}{T}n}} = 0.$Because the average distance in an undirected RN is roughly l=logn/log((n−1)p) and the average distance in the giant component is lessthan log 0.49n/log((n−1)p), the upper bound of TT is calculated asfollowing:TT<t _(d)+7.31t _(i) log n−2.27t _(i),

${\overset{\_}{TT} < {{\overset{\_}{t}}_{d} + {7.31\;{\overset{\_}{t}}_{i}\log\; n}\; - {2.27\;{\overset{\_}{t}}_{i}}}},{7.31 = \frac{1}{\log\left( {\left( {n - 1} \right)p} \right)}},{{- 2.27} = {\frac{\log\mspace{14mu} 0.49}{\log\left( {\left( {n - 1} \right)p} \right)}.}}$

The similar result can be obtained for the undirected SFN, i.e.,

$\overset{\_}{TT} < {{\overset{\_}{t}}_{d} + {7.31{\overset{\_}{t}}_{i}\mspace{14mu}\log\mspace{11mu} n} + {{\overset{\_}{t}}_{i}{\frac{\log\mspace{11mu} p_{g}}{\log\left( {\left( {n - 1} \right)p} \right)}.}}}$For the undirected BECN, TT of the giant component is

${\overset{\_}{t}}_{d} + {\left( {\frac{1}{{np}_{g}} + \frac{2\left( {{np}_{g} - 1} \right)}{{np}_{g}}} \right){{\overset{\_}{t}}_{i}.}}$When n→∞, TT=t _(d)+2t _(i), which is the same as the TT of theCentralized CEPD Logic when j=1.

In many real-world situations, t _(d) and t _(i) are relatively smallcompared to T and TS. For example, suppose

${{\overset{\_}{t}}_{d} = {\frac{1}{200}T}},{{\overset{\_}{t}}_{i} = {\frac{1}{400}T}},{{TS} = \;{\frac{1}{2}T}},{{{and}\mspace{14mu} n} = 10000.}$With the Centralized CEPD Logic, TT=T−TS=0.5T because

$\frac{\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}}}{n} = {\frac{50}{10000} = {0.005 \approx 0.}}$With the Decentralized CEPD Logic, TT<0.08T for the undirected RN, SFN,and BECN. TT of the Decentralized CEPD Logic is smaller than that of theCentralized CEPD Logic.

With the Decentralized CEPD Logic, it is clear that

$\overset{\_}{CA} \geq {\frac{TS}{T}p_{CE}r}$for any of the undirected RN, SFN, and BECN. The further analysis of CAis difficult if t_(i)≠0. Suppose t_(i)=0. Because

${{\lim\limits_{n->\infty}\left( {1 - p_{g}} \right)^{\frac{TS}{T}n}} = 0},$at least one node that needs to be satisfied before TS belongs to thegiant component. For all the nodes that need to be satisfied after TSand belong to the giant component,

$\overset{\_}{CA} = {p_{g}p_{CE}{{r\left( {1 - \frac{TS}{T}} \right)}.}}$The CA of nodes that need to be satisfied after TS and belong to smallcomponents is difficult to calculate. When t_(i)=0, therefore,

$\overset{\_}{CA} \geq {\left( {p_{g} + {\left( {1 - p_{g}} \right)\frac{TS}{T}}} \right)p_{CE}{r.}}$This result is valid if TT≦T−TS. Note that when t_(i)=0, TT=max (t_(d)).

The calculation of PA also requires the assumption that t_(i)=0. Nodesthat need to be satisfied before TS are not prognosed with theDecentralized CEPD Logic. For nodes that need to be satisfied after TSand belong to the giant component,

$\overset{\_}{PA} = {p_{g}p_{CE}{{r\left( {1 - \frac{{TS} + {\overset{\_}{t}}_{d}}{T}} \right)}.}}$The PA of nodes that need to be satisfied after TS and belong to smallcomponents is difficult to calculate. In summary,

$\overset{\_}{PA} \geq {p_{g}p_{CE}{{r\left( {1 - \frac{{TS} + {\overset{\_}{t}}_{d}}{T}} \right)}.}}$This result is valid if TT≦T−TS. It is expected that both CA and PAdecrease if t_(i)>0.

Even with the assumption that t_(i)=0, the exact form of TD is difficultto derive with the Decentralized CEPD Logic. It is expected that the TDof the Decentralized CEPD Logic is less than that of the CentralizedCEPD Logic because the CA and PA of the Decentralized CEPD Logic islarger than those of the Centralized CEPD Logic, respectively. The TD,however, is dependent on the value of many parameters including t _(d),t _(i), T and TS.

Note that the above analysis is based on the assumption that only nodesthat need to be satisfied before TS are detected for CEs. According toSteps 1c and 2c of the Decentralized CEPD Logic in Table 4.6, nodes thatneed to satisfied after TS may also be detected for CEs. One of theconditions in the analysis of the Centralized CEPD Logic is

$\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \in {{o(n)}.}$One of the conditions in the analysis of the Decentralized CEPD Logic ist_(i)=0. Because both conditions need to be satisfied for the comparisonbetween the two approaches,

$\frac{T - {TS}}{{\overset{\_}{t}}_{d}} \in {{o(n)}.}$This means

${{\lim\limits_{n\rightarrow\infty}\frac{\frac{T - {TS}}{{\overset{\_}{t}}_{d}}}{n}} = 0},$which can be rewritten as

${\lim\limits_{n\rightarrow\infty}\frac{1 - \frac{TS}{T}}{\frac{{\overset{\_}{t}}_{d}}{T}n}} = 0.$This indicates that

$\left. {\frac{{\overset{\_}{t}}_{d}}{T}n}\rightarrow\infty \right.,$which means in a period of t _(d) time there are unlimited number ofnodes some of which are due for CE detection.

There are therefore two situations: (a) only nodes that need to besatisfied before TS are detected for CEs, i.e., Steps 1c and 2c areexecuted by agents for nodes that need to be satisfied before TS; (b)not only nodes that need to be satisfied before TS, but also nodes thatneed to be satisfied after TS are detected for CEs. Because

$\left. {\frac{{\overset{\_}{t}}_{d}}{T}n}\rightarrow\infty \right.,$situation (b) has the following properties: (1) TT=T−TS; (2) CA≈p_(CE)r;(3) the PA of situation (b) is larger than or equal to the PA ofsituation (a); (4) the TD of situation (b) is smaller than or equal tothe TD of situation (a). Theorem 2 summarizes the analysis of theDecentralized CEPD Logic in both situations:

Theorem 2:

the Decentralized CEPD Logic has the following properties when it isapplied to the RN, SFN, or BECN:

1. The total CEPD time TT_(p) _(both) ₌₁≧TT_(p) _(both) _(<1);

2. The mean coverage ability CA _(p) _(both) ₌₁≧CA _(p) _(both) _(<1);

3. The mean prognostics ability PA_(p) _(both) ₌₁≧PA _(p) _(both) _(<1);

4. The mean total damage TD _(p) _(both) ₌₁≦TD _(p) _(both) _(<1).

When p_(both)=1,

${{\frac{TS}{T}n} \in {\theta(n)}},$and only nodes that need to be satisfied before TS are detected for CEs(situation (a)), the Decentralized CEPD Logic has the followingproperties:

-   1. The mean total CEPD time

$\overset{\_}{TT} < {{\overset{\_}{t}}_{d} + {\frac{\log\;{np}_{g}}{\log\;\overset{\_}{d}}{\overset{\_}{t}}_{i}}}$for the RN and SFN,

$\frac{1}{\log\;\overset{\_}{d}} = {{7.31 \cdot \overset{\_}{TT}} = {{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}}}$for the BECN; TT=max (t_(d))) if t_(i)=0;

-   2. The mean coverage ability

$\overset{\_}{CA} \geq {\frac{TS}{T}p_{CE}r}$when TT≦T−TS.

$\overset{\_}{CA} \geq {\left( {p_{g} + {\left( {1 - p_{g}} \right)\frac{TS}{T}}} \right)p_{CE}r}$when TT≦T−TS and t_(i)=0;

-   3. The mean prognostics ability

$\overset{\_}{PA} \geq {p_{g}p_{CE}r\mspace{11mu}\left( {1 - \frac{{TS} + {\overset{\_}{t}}_{d}}{T}} \right)}$when TT≦T−TS and t_(i)=0.

When

${\frac{TS}{T}n} \in {\theta(n)}$and nodes are detected for CEs when they are due for detection(situation (b)), the Decentralized CEPD Logic has the followingproperties:

-   1. The total CEPD time TT=T−TS;-   2. The mean coverage ability CA≈p_(CE) if t_(i)=0;-   3. The mean prognostics ability PA is larger than or equal to the PA    in situation (a) if t_(i)=0;-   4. The mean total damage TD is equal to or smaller than the TD in    situation (a) if t_(i)=0.

p_(g)=0.49 for the RN;

$p_{j} = {\left( \frac{1}{1.20} \right)j^{- 3}}$and 0<p_(g)<1 for the SFN; the fittest node of the BECN has 80% of linksand 0.55≦p_(g)≦0.63 for the BECN.

5.3.3. Analysis of the Traditional CEPD Algorithm

The Traditional CEPD Algorithm detects CEs sequentially withoutconsidering the relationship between nodes. Regardless of the value ofp_(both) and the types of networks, TT=T−TS,

${\overset{\_}{CA} = {\frac{\overset{\_}{j}}{n\;} = 0}},$PA=0, and

$\overset{\_}{TD} = {{\frac{1}{2}{np}_{CE}T\;\overset{\_}{dA}\mspace{14mu}{if}\mspace{14mu}\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}}} \in {{o(n)}.}}$Theorem 3 summarizes the analysis of the Traditional CEPD Algorithm.

Theorem 3:

the Traditional CEPD Algorithm has the following properties when it isapplied to the RN, SFN, or BECN if

$\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \in {{o(n)}\text{:}}$

-   1. The total CEPD time TT_(p) _(both) ₌₁=TT_(p) _(both) _(<1)=T−TS;-   2. The mean coverage ability CA _(p) _(both) ₌₁=CA _(p) _(both)    _(<1)=0;-   3. The prognostics ability PA_(p) _(both) ₌₁=PA_(p) _(both) _(<1)=0;-   4. The mean total damage

${\overset{\_}{TD}}_{p_{both} = 1} = {{\overset{\_}{TD}}_{p_{both} < 1} = {\frac{1}{2}{np}_{CE}T{\overset{\_}{dA}.}}}$

Table 5.2, Table 5.3, and Table 5.4 summarize the analysis results inthe three theorems. Analysis results show that (1) the decentralizedCEPD Logic performs better than the Centralized CEPD Logic, and theCentralized CEPD Logic performs better than the Traditional CEPDAlgorithm in terms of the mean of all four performance measuresregardless of the type of undirected network; (2) both the Centralizedand Decentralized CEPD Logic performs better over the undirected networkthan the corresponding directed network in terms of the mean of all fourperformance measures; (3) the Centralized Logic performs better over theundirected BECN than the undirected RN in terms of the mean of CA; (4)the Traditional CEPD Algorithm has the same performance regardless ofthe type of network (RN, SFN, or BECN; directed or undirected).

TABLE 5.2 Performance of the CEPD Approaches over the Same UndirectedNetwork Centralized Decentralized Traditional TT Decentralized ≦Centralized = Traditional (when t _(d) ≦ T − TS ) T − TS max (t_(d)) orT − TS T − TS CA Decentralized ≧ Centralized > Traditional p_(g)p_(CE)r$\geq {\left( {p_{g} + {\left( {1 - p_{g}} \right)\frac{TS}{T}}} \right)p_{CE}r\mspace{14mu}{or}}\; \approx {p_{CE}r}$0 PA Decentralized ≧ Centralized ≧ Traditional$p_{g}p_{CE}{r\left( {1 - \frac{{TS} + {\left( {{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)/p_{g}}}{T}} \right)}$$\geq {p_{g}p_{CE}{r\left( {1 - \frac{{TS} + {\overset{\_}{t}}_{d}}{T}} \right)}}$0 TD Centralized ≦ Traditional; expect that Decentralized ≦ Centralized$\geq {\frac{T}{2}{np}_{CE}\overset{\_}{dA}{p_{g}\left( {\frac{\left( {{TS} + {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)^{2}r}{T^{2}} + 1 - r} \right)}}$N/A ½ np_(CE)TdA$\leq {\frac{T}{2}{np}_{CE}\overset{\_}{dA}{p_{g}^{2}\left( {\frac{\left( {{TS} + {\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)^{2}r}{T^{2}} - {p_{CE}r} + p_{CE} + \frac{1}{p_{g}^{2}} - 1} \right)}}$Condition${\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \in {o(n)}};\left. {\left( {1 - p_{g}} \right)^{j}\mspace{14mu} j}\rightarrow 0 \right.$${{\frac{TS}{T}n} \in {\theta(n)}};{t_{i} = 0};{t_{d} \leq {T - {TS}}}$$\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \in {o(n)}$

TABLE 5.3 Performance of the CEPD Approaches over Corresponding Directedand Undirected Networks Centralized Decentralized Traditional TT TT_(p)_(both) ₌ ₁ = TT_(p) _(both) _(< 1) = T − TS TT_(p) _(both) ₌ ₁ ≧ TT_(p)_(both) _(< 1) TT_(p) _(both) ₌ ₁ = TT_(p) _(both) _(< 1) = T − TS CA CA_(p) _(both) ₌ ₁ ≧ CA _(p) _(both) _(< 1) CA _(p) _(both) ₌ ₁ = CA _(p)_(both) _(< 1) = 0 PA PA _(p) _(both) ₌ ₁ ≧ PA _(p) _(both) _(< 1) PA_(p) _(both) ₌ ₁ = PA _(p) _(both) _(< 1) = 0 TD TD _(p) _(both) ₌ ₁ ≦TD _(p) _(both) _(< 1) TD _(p) _(both) ₌ ₁ = TD _(p) _(both) _(< 1) = ½np_(CE)TdA Condition$\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \in {o(n)}$None

TABLE 5.4 Performance of the Same CEPD Approach over DifferentUndirected Networks RN SFN BECN p_(g) = 0.49 0 < p_(g) < 1 0.55 ≦ p_(g)≦ 0.63 TT RN = SFN = BECN = T − TS for the Centralized Logic,Decentralized Logic in situation (b), and Traditional Algorithm; RN =SFN = BECN = max(t_(d)) for the Decentralized Logic in situation (a) CABECN ≧ RN for the Centralized Logic; RN = SFN = BECN = 0 for theTraditional Algorithm PA TD RN = SFN = BECN = ½ np_(CE)TdA for theTraditional Algorithm Condition${\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \in \left. {{o(n)}\mspace{14mu}{and}\mspace{14mu}\left( {1 - p_{g}} \right)^{j}\mspace{14mu} j}\rightarrow{0\mspace{14mu}{for}\mspace{14mu}{the}\mspace{14mu}{Centralized}\mspace{14mu}{Logic}} \right.};$${{\frac{TS}{T}n} \in {{\theta(n)}\mspace{14mu}{and}\mspace{14mu} t_{i}}} = {0\mspace{14mu}{for}\mspace{14mu}{the}}$${{Decentralized}\mspace{14mu}{Logic}};{\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \in {{o(n)}\mspace{14mu}{for}\mspace{14mu}{the}\mspace{14mu}{Traditional}\mspace{14mu}{Algorithm}}}$

Chapter 6. Experiments, Results and Validation

The objectives of the experiments are to: (1) verify the analyticalresults of the three CEPD approaches; (2) explore properties of theCentralized and Decentralized CEPD Logic that have not been analyticallystudied; (3) discover the properties of the CEPD approaches when certainconditions are relaxed; (4) identify improvements for the Centralizedand Decentralized CEPD Logic to obtain better performance.

6.1. Network Generation

The experiments are conducted by executing a software program usingAutoMod (AutoMod Version 11.1, 1998-2003) to simulate the three CEPDapproaches. Three networks, RN, SFN, and BECN, must be generated in theexperiments. Due to the limit of maximum 200 entities in AutoMod, n=150for each network. In the SFN,

${\sum\limits_{d - 1}^{149}{cp}_{d}} = {{{c{\sum\limits_{d - 1}^{149}d^{- 3}}} \approx {1.20{c \cdot c}}} = \frac{1}{1.20}}$still holds when n=150. The parameters of the three networks are:

-   RN: p=1.37/(150−1)≈0.009;-   SFN: The degree distribution is

${p_{d} = {\frac{1}{1.20}d^{- 3}}},{{1 \leq d \leq 149}\;;}$

-   BECN: The total number of links is

$\frac{{n\left( {n - 1} \right)}p}{2} \approx 103.$The fittest node has 80% of total links, i.e., 82 links, and the other20% links, i.e., 21 links, are uniformly and randomly assigned to othernodes.

The generation of the RN and BECN is straightforward. To generate theSFN, a four-step procedure has been used in previous research (Molloyand Reed, 1995; Newman et al., 2001; Newman et al., 2006):

-   1. Generate the degree sequence according to the degree distribution    to determine the number of links each node has;-   2. Create a list in which the label s of each node appears exactly    d_(s) times;-   3. Pair up elements from the list randomly and uniformly until none    remain;-   4. Add a link to the network joining the two nodes in each pair.

As long as

$\sum\limits_{s = 1}^{n}d_{s}$is even, the procedure can always be completed. If

$\sum\limits_{s = 1}^{n}d_{s}$is odd, the procedure repeats Step 1 until

$\sum\limits_{s = 1}^{n}d_{s}$becomes even. In Step 3, each pair has two different nodes. If two nodesare the same, they are not paired up and Step 3 is repeated until twodifferent nodes are selected. Two nodes are paired up only once. If tworandomly selected nodes have already been paired up, Step 3 is repeatedto find another pair of nodes. A possible failure that has not beendiscussed previously can be illustrated with the following example.

Suppose a network has three nodes, node 1, node 2, and node 3. Node 1has one link; node 2 has one link; and node 3 has two links. There arefour numbers on the list generated in Step 2: 1, 2, 3, 3. It is possiblethat the numbers 1 and 2 are first selected from the list. This causes afailure because node 3 cannot link to itself.

A small revision of the procedure can avoid the failure. This means tofirst pair up nodes that have more links. To generate a pair of nodes,the first node is chosen according to the number of links it has, i.e.,the number of times it appears on the list; the second node is chosenrandomly and uniformly from the list. The revision can avoid thesituation in which nodes with more links have to link to itself. Notethat, however, nodes with more links already have higher probability tobe chosen following the procedure. The revision therefore may not benecessary. In the experiments, the four-step procedure described aboveis used to generate the SFN. If the failure discussed here occurs, allpairings will be deleted and the procedure repeats Step 3.

6.2. Experiment Design

To verify the analytical results, the design of the experiments is asfollowing:

-   1. The independent variable CEPD approach (AP) has three levels:    AP₁=Centralized CEPD Logic, AP₂=Decentralized CEPD Logic, and AP₃    Traditional CEPD Algorithm;-   2. The independent variable network (NET) has six levels:    NET₁=Directed RN; NET₂=Undirected RN; NET₃=Directed SFN;    NET₄=Undirected SFN; NET₅=Directed BECN; NET₆=Undirected BECN;-   3. For the directed RN, SFN, and BECN, p_(both)=0.5 and    p_(in)=p_(out)=0.25. For the undirected RN, SFN, and BECN,    p_(both)=1 and p_(in)=p_(out)=0;-   4. There are four dependent variables: TT, CA, PA, and TD;-   5. T=100; TS=50; t _(d)=5 and t_(d) is randomly and uniformly drawn    from (4,6); t_(i)=0. These are reasonable assumptions. For instance,    T=100 indicates the system is modeled for 100 seconds, i.e., at most    100 seconds are allowed for CEPD. TS=50 indicates the CEPD starts at    time 50 seconds. t _(d)=5 indicates it takes on average 5 seconds to    detect a CE. t_(i)=0 indicates the information transmission is    instantaneous. These assumptions ensure the conditions of the    analysis are satisfied:    -   5a.

${\frac{\frac{T - {TS}}{{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}}}{n} = {\frac{10}{150} = {0.07 \approx 0}}},$the probability that no nodes that need to satisfied before j(t _(d)+2t_(i)) can be found is approximately

$\left( {1 - \frac{{TS} + {j\left( {{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)}}{T}} \right)^{n^{\prime}}.$n′≧c₁n−c₂(j−1) where c₁ is the portion of nodes that belong to smallcomponents (c₁=0.51 for the undirected RN; 0<c₁<1 for the undirectedSFN; 0.37≦c₁≦0.45 for the undirected BECN); c₂ is the size of smallcomponents (c₂=3.32 for the undirected RN; c₂∈θ(log n) for theundirected SFN).

${\left( {1 - \frac{{TS} + {j\left( {{\overset{\_}{t}}_{d} + {2{\overset{\_}{t}}_{i}}} \right)}}{T}} \right)^{n^{\prime}} \leq \left( {1 - \frac{TS}{T}} \right)^{{c_{1}n} - {c_{2}{({j - 1})}}} \approx 0};$

-   -   5b. Because 4<t_(d)<6, t_(i)=0, and

$j = \frac{T - {TS}}{t_{d} - {2t_{i}}}$for the Centralized CEPD Logic, 8.33<j<12.5. (1−p_(g))^(j) j≠0 wherep_(g) is the size of the giant component;

-   -   5c. Because

${{\frac{TS}{T}n} = 75},{\left( {1 - p_{g}} \right)^{\frac{TS}{T}n} \approx 0}$where p_(g) is the size of the giant component;

-   -   5d. t_(d)<T−TS=50.

-   6. The reliability of any detecting technique r=0.9. Both false    positive and false negative are 0.1;

-   7. The time t that a node con(r,t) needs to be satisfied is    uniformly and randomly chosen from (0,T), i.e., (0,100);

-   8. The probability that a node has a CE or a component has CEs    P_(CE)=0.5. All nodes have the CE if the component has the CE. This    guarantees that the average total number of CEs in a network is    np_(CE), regardless of the type of network;

-   9. The mean damage caused by a CE over one time unit dA=10 and dA is    randomly and uniformly drawn from (5,15).

There are 18 combinations (3×6) of independent variables. Two hundredexperiments are conducted for each combination. Total 3600 experimentsare conducted using AutoMod (AutoMod Version 11.1, 1998-2003). Theexperiments aim to verify the results summarized in Table 6.1.

TABLE 6.1 Analytical Results for Verification Performance CentralizedDecentralized Traditional Measure Network RN SFN BECN RN SFN BECN RN SFNBECN TT Undirected 50 in situation (a); 50 in 50 Directed situation (b)CA Undirected 0.22  0.45p_(g) 0.25~ situation (a) 0 0.28 ≧0.34≧0.225(1 + p_(g)) ≧0.35 ≈0.45 in situation (b) Directed ≦0.22 ≦0.45p_(g)≦CA _(p) _(both) ₌₁ ≦CA _(p) _(both) ₌₁ PA Undirected 0.09 0.22p_(g) −0.02 0.10~ situation (a) 0.12 ≧0.10 ≧0.20p_(g) ≧0.11 situation (b) ≧situation (a) Directed ≦0.09 ≦PA _(p) _(both) ₌₁ ≦PA _(p) _(both) ₌₁ TDUndirected 6840~31398 13959p_(g)~ 11344~ situation (b) ≦ situation (a)37500 37500 − 25416p_(g) ² 29812 Directed ≧TD _(p) _(both) ₌₁ ≧TD _(p)_(both) ₌₁

6.3. Experiment Results and Discussion

Reference is made to FIG. 14, which shows a diagram labeled Table 6.2.Table 6.2 summarizes the experiment results for verification. ComparingTable 6.1 and Table 6.2 (as shown in FIG. 14), there is an excellentagreement between experiment and analytical results except for twovalues, the CA (Analytical: 0.09; Experiment: 0.16) of the CentralizedCEPD Logic and the TT (Analytical: 50; Experiment: 41.54) of theDecentralized CEPD Logic, both of which are for the undirected SFN andare highlighted in Table 6.2. The inconsistencies are due to the uniqueproperties of SFN. Recall the discussion in Section 5.3.1, theundirected SFN with exponent −3 has a giant component whose size scaleslinearly with the size of the network, n. Beside the giant component,there are many non-giant components in the SFN. The second largestcomponents have size of θ(log n).

Because n=150 in the experiments, the size of some non-giant componentsmay be close to the size of the giant component. In other words, theeffect of non-giant components is not negligible when n=150. Thisexplains why the CA is larger in the experiments (0.16>0.09) and the TTis smaller in the experiments (41.54<50). When a non-giant componentwhose size is close to the size of the giant component is selected forCEPD, the CA increases and the TT decreases substantially. Note that thesize of non-giant components in the undirected RN and BECN is relativelysmall and is not related to the size of the network.

1. Performance of the Three CEPD Approaches Over the Undirected Networks

The experiment results in Table 6.2 show that:

-   a. For each of the three undirected networks, RN, SFN, and BECN, the    Decentralized CEPD Logic outperforms the Centralized CEPD Logic.    Compared to the Centralized CEPD Logic, the Decentralized CEPD Logic    has smaller TT and TD, and larger CA and PA;-   b. For each of the three undirected networks, RN, SFN, and BECN, the    Centralized CEPD Logic outperforms the Traditional CEPD Algorithm.    Compared to the Traditional CEPD Algorithm, the Centralized CEPD    Logic has smaller TD and larger CA and PA. Both approaches have the    same TT.-   c. When TT increases from 6 to 50, the performance of the    Decentralized CEPD Logic improves.

These results verify the analysis summarized in Table 5.2. For the largeundirected constraint network, RN, SFN, or BECN, with a giant component,the Decentralized CEPD Logic is always preferred to detect, diagnose,and prognose CEs with the largest CA and PA, and the smallest TT and TD.

2. Performance of the Three CEPD Approaches Over the Directed Networks

The experiment results in Table 6.2 show that for each of the threedirected networks, RN, SFN, and BECN, the Decentralized CEPD Logicoutperforms both the Centralized CEPD Logic and Traditional CEPDAlgorithm. Compared to the other two approaches, the Decentralized CEPDLogic has smaller TT and TD, and larger CA and PA. This verifies theanalysis summarized in Theorem 2. In addition, the experiment results inTable 6.2 show that the Centralized CEPD Logic outperforms theTraditional CEPD Algorithm with larger CA and PA.

3. Performance of the Three CEPD Approaches Over Different Networks (RN,SFN, or BECN), and the Corresponding Undirected and Directed Networks

The experiment results in Table 6.2 show that the Traditional CEPDAlgorithm performs the same over the corresponding directed andundirected networks. The Centralized CEPD Logic performs better over theundirected network with larger CA and PA, and smaller TD. TheDecentralized CEPD Logic has larger PA and smaller TD over theundirected network than the corresponding directed network. The CA ofthe Decentralized CEPD Logic is almost the same for the correspondingundirected and directed networks. These results verify the analysissummarized in Table 5.3.

The experiment results in Table 6.2 show that for all three networks,RN, SFN, and BECN (all are directed or undirected), the performance ofthe Centralized CEPD Logic is BECN>RN>SFN. The performance of theDecentralized CEPD Logic and Traditional CEPD Algorithm is not sensitiveto the type of network. The Decentralized CEPD Logic, however, performsa little better over the SFN than the RN and BECN because there are somelarge components in the SFN other than the giant component. Theseresults verify the analysis summarized in Table 5.4. theorem 4summarizes the selection of CEPD approaches to detect, diagnose, andprognose CEs.

Theorem 4:

for any of the directed or undirected constraint network, RN, SFN, orBECN, the Decentralized CEPD Logic is preferred to detect, diagnose, andprognose CEs with the largest CA and PA, and the smallest TT and TD. TheCentralized CEPD Logic outperforms the Traditional CEPD Algorithm withlarger CA and PA. The Centralized CEPD Logic perform better over theundirected network than the corresponding directed network with largerCA and PA, and smaller TD. The Traditional CEPD Algorithm performs thesame over the undirected and the corresponding directed networks. TheDecentralized CEPD Logic has larger PA and smaller TD over theundirected network than the corresponding directed network whereas theCA of the corresponding undirected and directed network is almost thesame. The performance of the Centralized CEPD Logic is influenced by thetype of network, i.e., BECN>RN>SFN in terms of CA, PA and TD. Theperformance of the Decentralized CEPD Logic and Traditional CEPDAlgorithm is not sensitive to the type of network. The DecentralizedCEPD Logic, however, performs better over the SFN than the RN and BECNwhen there are some large components in the SFN other than the giantcomponent.

6.4. CECA and CEPA

The CA and PA defined earlier to evaluate the performance of three CEPDapproaches are not the CE coverage ability or CE prognostics ability.The CE coverage ability (CECA) is the quotient of the number of CEs thatare detected, diagnosed, or prognosed, divided by the total number ofCEs, 0≦CECA≦1. The CE prognostics ability (CEPA) is the quotient of thenumber of CEs that are prognosed, divided by the total number of CEs,0≦CEPA≦1. The CECA and CEPA are the performance measures of interest,but cannot be analyzed mathematically because of the dependence betweenthe numerator and denominator. Table 6.3 summarizes the experimentresults of CECA and CEPA.

TABLE 6.3 Experiment Results of CECA and CEPA Performance CentralizedDecentralized Traditional Measure Network RN SFN BECN RN SFN BECN RN SFNBECN CECA Undirected 0.42 0.28 0.42 situation (a) 0.06 0.72 0.76 0.64situation (b) 0.89 0.90 0.87 Directed 0.23 0.19 0.31 situation (a) 0.660.68 0.59 situation (b) 0.88 0.89 0.87 CEPA Undirected 0.11 0.07 0.12situation (a) 0 0.24 0.28 0.17 situation (b) 0.25 0.34 0.17 Directed0.04 0.03 0.08 situation (a) 0.19 0.21 0.13 situation (b) 0.21 0.26 0.14

It is expected and the results in Table 6.2 and Table 6.3 show that CECAand CEPA are larger than CA and PA, respectively, for each network andapproach combination. In addition, the change of CECA and CEPA mostlyfollows the same trend of CA and PA, respectively:

-   1. For any large constraint network, RN, SFN, or BECN, the    Decentralized CEPD Logic has the largest CECA and CEPA. The    Centralized CEPD Logic has larger CECA and CEPA than the Traditional    CEPD Algorithm;-   2. The Centralized and Decentralized CEPD Logic has larger CECA and    CEPA over the undirected network than the corresponding directed    network. The Traditional CEPD Algorithm performs the same over the    undirected and the corresponding directed networks;-   3. The performance of the Centralized CEPD Logic is influenced by    the type of network, i.e., BECN≧RN>SFN in terms of CECA and CEPA.    The performance of the Traditional CEPD Algorithm is not sensitive    to the type of network;-   4. The Decentralized CEPD Logic is also influenced by the type of    network, i.e., SFN>RN>BECN. This result about CECA and CEPA is    different than the analysis and experiment results of CA and PA.

In summary, the Decentralized CEPD Logic is preferred to detect,diagnose, and prognose CEs in terms of CECA and CEPA. For instance, whenthe Decentralized CEPD Logic is applied for CEPD over the undirectedSFN, CECA=0.9 and CEPA=0.34. This indicates that on average, 90% of CEsare detected, diagnosed, or prognosed, and 34% of CEs are actuallyprognosed.

6.5. Performance of CEPD Approaches with Non-Zero Communication Time

It is assumed in the Centralized CEPD Logic that the time needed to findrelated nodes according to the relationship (e.g., Table 4.4) and markthe nodes (e.g., Table 4.3) is negligible. In the Decentralized CEPDLogic, it is assumed that the communication time between agents is zero,i.e., t_(i)=0. As a result, the communication time between the centralcontrol unit and nodes in the Centralized CEPD Logic is also assumed tobe zero for the purpose of valid comparison between the CEPD approaches.

In reality, the time needed to find related nodes and mark them is verysmall and close to zero because the task is completed automatically bycomputers or other computing devices. This is verified by simulationexperiments which take less than 1 second of CPU time to complete oneexperiment. It is therefore reasonable to assume the time needed tosearch and mark nodes to be zero. The communication time in bothCentralized and Decentralized CEPD Logic, however, may not benegligible, and is affected by many factors such as distance betweennodes, routing algorithms, and transmission media. It is interesting toknow how the three CEPD approaches perform when the communication timeis larger than zero.

Additional experiments are conducted to study the performance of threeCEPD approaches when t_(i)≠0. In the experiments, it is assumed thatt_(i) and t_(d) follow the same distribution, i.e., t _(i)=5 and t_(i)randomly and uniformly drawn from (4,6) for both the Centralized andDecentralized CEPD Logic. According to Theorem 1, it is expected thatCA, CECA, PA, and CEPA will decrease and TD will increase for theCentralized CEPD Logic when t_(i)≠0. The same trend is expected for theTraditional CEPD Algorithm. For the Decentralized CEPD Logic, TT willincrease in situation (a) and remain almost the same in situation (b).It is expected that CA, CECA, PA, and CEPA will remain almost the same.TD may increase because some CEs are detected, diagnosed, or prognosedat a later time. Table 6.4 summarizes the experiment results whent_(i)≠0.

TABLE 6.4 Experiment Results when t_(i) ≠ 0 Performance CentralizedDecentralized Traditional Measure Network RN SFN BECN RN SFN BECN RN SFNBECN TT Undirected 50 situation (a) 50 21.93 19.15 17.13 situation (b)49.83 44.85 49.90 Directed situation (a) 21.70 18.35 16.70 situation (b)49.97 49.74 49.97 CA Undirected 0.16 0.08 0.28 situation (a) 0.01 0.370.39 0.36 situation (b) 0.44 0.45 0.43 Directed 0.05 0.04 0.18 situation(a) 0.35 0.34 0.33 situation (b) 0.44 0.44 0.43 CECA Undirected 0.240.13 0.35 situation (a) 0.02 0.71 0.76 0.63 situation (b) 0.88 0.90 0.87Directed 0.07 0.07 0.23 situation (a) 0.66 0.68 0.59 situation (b) 0.880.89 0.87 PA Undirected 0.03 0.01 0.07 situation (a) 0 0.12 0.12 0.11situation (b) 0.12 0.15 0.11 Directed 0.01 0.01 0.04 situation (a) 0.100.09 0.08 situation (b) 0.10 0.11 0.09 CEPA Undirected 0.05 0.02 0.08situation (a) 0 0.20 0.24 0.14 situation (b) 0.21 0.29 0.14 Directed0.01 0.01 0.05 situation (a) 0.17 0.18 0.11 situation (b) 0.18 0.22 0.11TD Undirected 33437 36202 28849 situation (a) 36878 37135 36663 1683216590 17043 situation (b) 14624 14470 14606 Directed 36942 36478 30284situation (a) 37125 36802 36927 17897 17779 18293 situation (b) 1476914605 14911

The comparison between Table 6.4, and Table 6.2 and Table 6.3 verifiesthe expectations. The performance of all three CEPD approachesdeteriorates when t_(i)≠0. Among them, the Decentralized CEPD Logic isthe most robust approach because its performance is affected the leastwhen t_(i) increases.

-   1. For the Centralized CEPD Logic, CA, CECA, PA, and CEPA are    smaller and TD are larger when t_(i)≠0 than what they are when    t_(i)=0;-   2. For the Traditional CEPD Algorithm, CA and CECA are smaller and    TD are larger when t_(i)≠0 than what they are when t_(i)=0. PA and    CEPA are zero in both cases;-   3. For the Decentralized CEPD Logic, TT is larger in situation (a)    when t_(i)≠0 than what it is when t_(i)=0. TT remains almost the    same in situation (b) when t_(i) changes. CA and CECA remain almost    the same when t_(i) changes. TD is larger when t_(i)≠0 than what it    is when t_(i)=0. PA and CEPA are smaller when t_(i)≠0 than what they    are when t_(i)=0. This should be expected because some CEs that are    prognosed when t_(i)=0 are no longer prognosed when t_(i)≠0.

6.6. Network-Adaptive Centralized CEPD Logic

Based on the analysis and experiment results, it becomes clear that theperformance of the Centralized CEPD Logic is sensitive to the networktopology, i.e., RN, SFN, BECN, directed, or undirected. The performanceof the Traditional CEPD Algorithm is not sensitive to the networktopology at all. The performance of the Decentralized CEPD Logic issensitive to the network topology to a certain degree, but not as muchas the Centralized CEPD Logic. It is interesting to know if theCentralized or Decentralized CEPD Logic can take advantage of thenetwork topology to improve their performance.

With the Decentralized CEPD Logic, each agent has local informationabout only one node, i.e., the constraint relationship (R) table such asTable 4.7 that describes the relationship between the node and othernodes. The only way for the Decentralized CEPD Logic to take advantageof the network topology is to let an agent have information about othernodes that are related to the node the agent is attached to. It isuncertain if this will improve the performance. Moreover, to enable anagent to obtain information about related nodes increases informationoverload and may be time consuming and error prone. It is therefore notrecommended for agents to obtain information about related nodes.

A central control unit executes the Centralized CEPD Logic described inTable 4.5 to detect, diagnose, and prognose CEs. Because the centralcontrol unit has the complete information about all the nodes in thenetwork (e.g., Table 4.3) and their relationship (e.g., Table 4.4), itis possible to explore the network topology to improve the performanceof the Centralized CEPD Logic. Probably the most helpful improvement isto start CE detection at the node that has the most links, then go tothe next node that has the second most links, and continue the processuntil all the nodes in the network are checked or the time that the CEPDmust stop. This is relatively a minor change of the logic. In Step 3 ofTable 4.5, originally con(r,t) is randomly selected. To improve,con(r,t) will be selected if it has the most links. The computation timeof selecting the node with most links is negligible.

The improved CEPD Logic, Network-Adaptive Centralized CEPD Logic, isexpected to have better performance, i.e., it is expected that CA, CECA,PA, and CEPA will increase and TD will decrease. The performanceimprovement is due to the complete information owned by the centralcontrol unit. This unique advantage of the Centralized CEPD Logic is notshared by two other approaches. Table 6.5 summarizes the experimentresults of the Network-Adaptive Centralized CEPD Logic.

TABLE 6.5 Experiment Results of the Network-Adaptive Centralized CEPDLogic Centralized Performance Measure Network RN SFN BECN TT Undirected49.95 49.83 50 Directed 50 49.99 50 CA Undirected 0.28 0.19 0.31Directed 0.18 0.14 0.24 CECA Undirected 0.48 0.35 0.44 Directed 0.280.25 0.31 PA Undirected 0.10 0.06 0.12 Directed 0.04 0.04 0.09 CEPAUndirected 0.15 0.10 0.15 Directed 0.07 0.06 0.11 TD Undirected 2787732380 24411 Directed 34347 34955 28677

The comparison between Table 6.5, Table 6.2, and Table 6.3 verifies theexpectations. CA, CECA, PA, and CEPA increase and TD decrease. TheDecentralized CEPD Logic, however, still outperforms theNetwork-Adaptive Centralized CEPD Logic.

Chapter 7. Conclusions and Implementation 7.1. Conclusions

This research studies conflict and error prevention and detection. Theunique and major theoretical contributions of this research are:

-   1. Development of a constraint-based modeling tool to unambiguously    define CEs, model the collaborative, cooperative, and/or    coordination relationship between units in a system, and identify    relationships between CEs (Sections 4.2 and 4.3);-   2. Development of (a) Centralized CEPD Logic and, (b) Decentralized    CEPD Logic to detect, diagnose, and prognose both conflicts and    errors by exploring the relationship between CEs and agent-based    technologies (Section 4.5);-   3. Development of agent-oriented Petri nets to define interactive    control of CEPD (Section 4.4);-   4. Implementation and analyses of the newly developed CEPD logic,    and the Traditional CEPD Algorithm over three types of real-world    constraint networks: RN, SFN, and BECN (CHAPTER 5 and CHAPTER 6);-   5. Development of four performance measures for validation and    comparison of different CEPD approaches (Section 5.3);-   6. Validation of CEPD logic through analytics (CHAPTER 5) and    simulation experiments (CHAPTER 6).

The guidelines of when to apply which CEPD approaches have beendeveloped in this research and are described as follows. Table 7.1summarizes the recommended CEPD logic and algorithm.

-   1. Both analytical and experiments results show that for a large    constraint RN, SFN, or BECN, the Decentralized CEPD Logic is    preferred since it requires the least CEPD time, obtains the largest    coverage ability and prognostics ability, and minimizes the total    damage, compared to the Centralized CEPD Logic and Traditional CEPD    Algorithm (Table 5.2, Table 6.2, and Table 6.3);-   2. If the Decentralized CEPD Logic cannot be applied for certain    reasons, e.g., communication disruptions between distributed agents,    the Network-Adaptive Centralized CEPD Logic should be used to obtain    relatively larger coverage ability and prognostics ability, and    relatively smaller total damage compared to the Traditional CEPD    Algorithm (Table 6.2, Table 6.3, and Table 6.5);-   3. It is assumed in this research that: (1) there are many nodes    (constraints) that need to be checked for CEs in a system, i.e., the    size of the constraint network is relatively large; (2) the    detection time for a CE is relatively small compared to the total    time allowed for CEPD, so that the detection process can be repeated    for sufficient amount of times in the Centralized CEPD Logic, e.g.,    10 times. This assumption guarantees that at least one node that    belongs to the giant component is detected for CEs; (3) the time    needed to identify and mark related nodes in the Centralized CEPD    Logic approaches zero; (4) the communication time approaches zero in    both Centralized and Decentralized CEPD Logic. The first three    assumptions hold in most real-world situations. When the last    assumption is relaxed, i.e., when the communication time is not    zero, experiment results show that the above two guidelines are    still true (Table 6.2, Table 6.3, and Table 6.4);-   4. This research has studied the typical real-world networks, i.e.,    the directed and undirected RN, SFN, and BECN. The exponent of the    assumed SFN is −3, which is the median of most real-world SFNs. The    fittest node has 80% of total links in the BECN. Other parameters    are determined to make sure that the mean degree is the same for all    six networks (d=1.37). As long as there exists a giant component in    the network, the above three guidelines may hold with one exception:    the Centralized CEPD Logic may perform as well as the Decentralized    CEPD Logic if the size of the giant component is large (Table 5.2).    Both analytical (Table 5.2) and experiment results (Table 6.2) show    that the Centralized CEPD Logic performs better as the size of the    giant component increases. For instance, if (1) the exponent of the    SFN is smaller than 1 (the size of the giant component tends to 1)    (Aiello et al., 2000; Newman et al., 2006), (2) the mean degree of    the RN is larger than 2 (the size of the giant component is larger    than 0.8) (Solomonoff and Rapoport, 1951), and (3) the fittest node    has more than 80% of total links in the BECN (the size of the giant    component will be probably larger than 0.63), the performance of the    Centralized CEPD Logic may be close or even the same as that of the    Decentralized CEPD Logic;-   5. If there is no giant component in the network, e.g., the exponent    of the SFN is larger than 3.48 (Aiello et al., 2000; Newman et al.,    2006), or the mean degree of the RN is less than 1 (Solomonoff and    Rapoport, 1951), the Decentralized CEPD Logic still outperforms the    other two approaches, i.e., the first guideline holds. The    performance of the Centralized CEPD Logic may be only a little    better or even the same as that of the Traditional CEPD Algorithm    (Table 5.2).

TABLE 7.1 Recommended CEPD Logic and Algorithm Given Network GivenCondition Undirected Directed Communication Recommended CEPD RN SFN BECNRN SFN BECN Giant Component Time Logic or Algorithm Source x x x p_(g) =0.49 for RN; 0 ≦ t_(i) < ∞ Decentralized CEPD Logic Table 5.2, Table6.2, 0 < p_(g) < 1 for SFN; Table 6.3, and Table 0.55 ≦ p_(g) ≦ 0.63 forBECN 6.4 t_(i) → ∞ Network-Adaptive Table 6.2, Table 6.3, CentralizedCEPD Logic and Table 6.5 x x x 0 < p_(g) ≦ 0.49 for RN; 0 ≦ t_(i) < ∞Decentralized CEPD Logic Table 6.2, Table 6.3, 0 < p_(g) < 1 for SFN;and Table 6.4 0 < p_(g) ≦ 0.63 for BECN t_(i) → ∞ Network-Adaptive Table6.2, Table 6.3, Centralized CEPD Logic and Table 6.5 x x x p_(g) → 1:d > 2 for RN; 0 ≦ t_(i) < ∞ Centralized CEPD Logic, Table 5.2, Table6.2, γ < 1 for SFN; the fittest Decentralized CEPD Table 6.3, Table 6.4,node has more than 80% Logic, or Network-Adaptive and Table 6.5 of totallinks for BECN Centralized CEPD Logic t_(i) → ∞ Centralized CEPD Logicor Table 5.2, Table 6.2, Network-Adaptive Table 6.3, and TableCentralized CEPD Logic 6.5 x x p_(g) → 0: d < 1 for RN; 0 ≦ t_(i) < ∞Decentralized CEPD Logic Table 5.2, Table 6.2, γ > 3.48 for SFN Table6.3, Table 6.4, and Table 6.5 t_(i) → ∞ Centralized CEPD Logic, Table5.2, Table 6.2, Network-Adaptive Table 6.3, and Table Centralized CEPDLogic, 6.5 or Traditional CEPD Algorithm

7.2. Implementation and Application Example

The general implementation steps to apply the CEPD Logic for a complexsystem are as following:

-   1. System network identification (Ljung, 1999). This step determines    the topology of the system and the type of links in the system. If    the topology of the system is known, e.g., a highway system is a    random network, the type of each link, i.e., directed or undirected,    needs to be determined. Sometimes there are no appropriate    theoretical network models that can be used to describe the system    topology. System network identification is significantly influenced    by how the system is modeled. For instance, the Internet can be    modeled at the router level or at the server level. These two    modeling approaches may lead to two different system network models    in terms of topology, type of links, or network parameters;-   2. Constraint modeling and network identification. Once the network    of the system is identified, each node in the network can be    represented by a constraint and links between nodes represent    relationships between constraints. In this case, the constraint    network is the same as the system network. In other cases, however,    the constraint network can be different from the system network. For    instance, a link instead of a node in the system network is    represented by a constraint. When the system network cannot be    described with any theoretical network models, constraints can be    modeled in a way that the constraint network can be described with    certain theoretical network model. A constraint network that can be    described with a theoretical network model such as RN, SFN, or BECN    enables analytical study for optimized CEPD logic or algorithm;-   3. Analysis of CEPD logic and algorithms. Once the constraint    network has been identified, the Centralized CEPD Logic,    Decentralized CEPD Logic, and Tradition CEPD Algorithm can be    analyzed with the knowledge of the characteristics of CEPD logic and    algorithms and the network model that describes the constraint    network. If the constraint network is a directed or undirected RN,    SFN, or BECN studied in this research, analysis has been completed    and Table 7.1 summarizes which logic and/or algorithm is recommended    to optimize the CEPD performance. Simulation experiments can be    conducted to validate the analytics. If the constraint network    cannot be described with a known network model, analytics is not    applicable and simulation experiments should be conducted to analyze    CEPD logic and algorithms before they are applied to the real    system;-   4. Test CEPD logic/algorithm. After the analysis of CEPD logic and    algorithms, selected CEPD logic/algorithms are applied to the real    system to test their performance. Test results are expected to    confirm analytical and simulation experiment results. If test    results do not match analytical or simulation experiment results,    Step 3 may be revisited;-   5. Finalize and apply the selected CEPD logic/algorithm. The    selected CEPD logic/algorithm may be customized to adapt to specific    CEPD requirements. For instance, if a constraint is dissatisfied    more frequently compared to other constraints, i.e., a conflict or    an error occurs more frequently compared to other CEs, the CEPD    logic/algorithm can start with checking this constraint. As another    example, if the system has certain fault-tolerant ability, the CEPD    logic/algorithm can be adjusted to not visit certain constraints. If    a significant adaptation is required, Step 2 may be revisited.

The above implementation steps can be illustrated with the electricalpower grid of the western United States (Barabasi and Albert, 1999):

-   1. System network identification. The nodes in this electrical power    grid include generators, transformers, and substations. There are    4941 nodes. The links are the high-voltage transmission lines    between the nodes. All links are directed links. This power grid has    been identified as a SFN with γ=4;-   2. Constraint modeling and network identification. Each node in the    electrical power grid can be represented by a constraint and links    between nodes represent relationships between constraints. For    instance, a constraint for a generator is “Providing 10⁴ voltage    electricity.” The constraint network is the same as the system    network, i.e., a SFN with γ=4. Links between nodes in the constraint    network are directed links. It is possible to construct different    constraint networks for the same system network. For instance, a    node in the electrical power grid can be represented by multiple    constraints if necessary. In this case, it may be difficult to study    the CEPD performance analytically due to the lack of known    theoretical network models.-   3. Analysis of CEPD logic and algorithms. Recall the discussion in    Section 5.2, the degree distribution function cd^(−γ) of a SFN is a    power series (d→∞), and the mean degree of a SFN converges if γ>2    and diverges if 1<γ≦2 (Arfken, 2005). Because the constraint network    for the electrical power grid is a SFN with γ=4, the CEPD    performance can be studied analytically. The analytical results for    the comparison of Centralized CEPD Logic, Decentralized CEPD Logic,    and Traditional CEPD Algorithm are expected to be similar to those    in Sections 5.3 and 6.3. The Decentralized CEPD Logic should be used    if communication between agents is possible. If the communication is    broken, Network-Adaptive Centralized CEPD Logic should be used to    optimize CEPD performance based on the four performance measures    defined in Section 5.3. A simulation model can also be built to    analyze the performance of different CEPD logic and algorithms;-   4. Test CEPD logic/algorithm. The Decentralized CEPD Logic and    Network-Adaptive Centralized CEPD Logic can be tested with the    electrical power grid. The test results are compared with the    analytical results in terms of the four performance measures, i.e.,    it is expected that the logic completes CEPD within certain amount    of time, achieves expected coverage ability and prognostics ability,    and the damage caused by CEs is close to analytical result;-   5. Finalize and apply the selected CEPD logic/algorithm. Even if the    CEPD logic has been tested and test results match analytical    results, the CEPD logic may not meet system requirements. For    instance, the CEPD logic cannot complete CEPD within certain amount    of time that is acceptable to the electrical power grid. The CEPD    logic may be improved to meet system requirements. For instance, a    heuristic CEPD logic can start CEPD with constraints that are    dissatisfied most frequently.

While the invention has been illustrated and described in detail in thedrawings and foregoing description, the same is to be considered asillustrative and not restrictive in character, it being understood thatonly preferred embodiments have been shown and described and that allchanges and modifications that come within the spirit of the inventionare desired to be protected.

The following references are incorporated herein by reference:

LIST OF REFERENCES

-   Albert, R., Jeong, H., and Barabasi, A. L., 1999, “Internet:    Diameter of the World-Wide Web,” Nature, 401(6749), pp. 130-131.-   Albert, R., Jeong, H., and Barabasi, A. L., 2000, “Error and attack    tolerance of complex networks,” Nature, 406(6794), pp. 378-382.-   Aiello, W., Chung, F., and Lu, L., 2000, “A random graph model for    massive graphs,” In Proceedings of the 32^(nd) Annual ACM Symposium    on Theory of Computing, pp. 171-180. Association of Computing    machinery, New York.-   Angeles Serrano, M. and De Los Rios, P., 2007, “Interfaces and the    edge percolation map of random directed networks,” Physical Review    E—Statistical, Nonlnear, and Soft Matter Physics, 76(5), pp. 56-121.-   Anussornnitisarn, P., 2003, Design of active middleware protocols    for coordination of distributed resources, Ph.D. Dissertation,    School of Industrial Engineering, Purdue University, West Lafayette,    Ind., U.S.A.-   Arfken, G. B., 2005, Mathematical methods for physicists, 6^(th)    ed., Elsevier, Boston.-   AutoMod Version 11.1, 1998-2003, Brooks Automation, Inc.-   Avila-Soria, J., 1998, Interactive error recovery for robotic    assembly using a neural-fuzzy approach, Master Thesis, School of    Industrial Engineering, Purdue University, West Lafayette, Ind.,    U.S.A.-   Barabasi, A. L. and Albert, R., 1999, “Emergence of scaling in    random networks,” Science, 286(5439), pp. 509-512.-   Barabasi, A. L., 2002, Linked: the new science of networks, Perseus    Publishing, Cambridge, Mass.-   Barber, K. S., Liu, T. H., and Ramaswamy, S., 2001, “Conflict    detection during plan integration for multi-agent systems,” IEEE    Transactions on Systems, Man, and Cybernetics, Part B: Cybernetics,    31(4), pp. 616-628.-   Bianconi, G. and Barabasi, A. L., 2001 a, “Competition and    multiscaling in evolving networks,” Europhysics Letters, 54(4), pp.    436-442.-   Bianconi, G. and Barabasi, A. L., 2001b, “Bose-Einstein condensation    in complex networks,” Physical Review Letters, 86(24), pp.    5632-5635.-   Bollobas, B., 2001, Random graphs, Academic Press, New York, 2^(nd)    ed.-   Broder, A., Kumar, R., Maghoul, F., Raghavan, P., Rajagopalan, S.,    Stata, R., Tomkins, A., and Wiener, J., 2000, “Graph structure in    the Web,” Computer Networks, 33(1), pp. 309-320.-   Cai, J., Zhang, G., and Zhou, Z., 2006, “The application of    area-reconstruction operator in automatic visual inspection of    quality control,” in Proc. of the World Congress on intelligent    Control and Automation (WCICA), 2, pp. 10111-10115.-   Calderon-Martinez, J. A. and Campoy-Cervera, P., 2006, “An    application of convolutional neural networks for automatic    inspection,” IEEE Conference on Cybernetics and Intelligent Systems,    pp. 1-6.-   Ceroni, J. A. and Velasquez, A. A., 2003, “Conflict detection and    resolution in distributed design,” Production Planning and Control,    14(8), pp. 734-742.-   Chang, C.-Y., Chang, J.-W., and Jeng, M. D., 2005, “An unsupervised    self-organizing neural network for automatic semiconductor wafer    defect inspection,” IEEE International Conference on Robotics and    Automation, pp. 3000-3005.-   Chen, L., Wang, X., Suzuki, M., and Yoshimura, N., 1999, “Optimizing    the lighting in automatic inspection system using Monte Carlo    method,” Japanese Journal of Applied Physics, Part 1: Regular Papers    and Short Notes and Review Papers, 38(10), pp. 6123-6129.-   Chen, X. W. and Nof, S. Y., 2007, “Error detection and prediction    algorithms: application in robotics,” Journal of Intelligent and    Robotic Systems, 48(2), pp. 225-252.-   Chen, X., 2009, “Information systems supported decentralized    conflict and error prevention and detection,” in Proceedings of the    2009 Industrial Engineering Research Conference, Miami, Fla., USA.-   Chen, X. W. and Nof, S. Y., 2009, “Automating error and conflict    prognostics and prevention,” In Handbook of Automation, Springer    Publishers, Heidelberg, Germany.-   Chen, X. W. and Nof, S. Y., 2010, “A decentralized conflict and    error detection and prediction model,” International Journal of    Production Research, 48(16), pp. 4829-4843.-   Chen, X. W. and Nof, S. Y., 2011, “Agent-based error prevention    algorithms,” submitted to Expert Systems with Applications.-   Chiang, L. H., Braatz, R. D., and Russell, E., 2001, Fault detection    and diagnosis in industrial systems, London, New York, Springer.-   Choi, J. Y., Lim, H., and Yi, B.-J., 2006, “Semi-automatic pipeline    inspection robot systems,” SICE-ICASE International Joint    Conference, pp. 2266-2269.-   Chung, S.-L., Wu, C.-C., and Jeng, M., 2003, Failure diagnosis: A    case study on modeling and analysis by Petri nets, Washington, D.C.,    United States, Institute of Electrical and Electronics Engineers    Inc.-   Cohen, R., Erez, K., Ben-Avraham, D., and Havlin, S., 2000,    “Resilience of the Internet to random breakdowns,” Physical Review    Letters, 85(21), pp. 4626-4628.-   Cohen, R., Erez, K., Ben-Avraham, D., and Havlin, S., 2001,    “Breakdown of the Internet under intentional attack,” Physical    Review Letters, 86(16), pp. 3682-3685.-   Cohen, R. and Havlin, S., 2003, “Scale-free networks are    ultrasmall,” Physical Review Letters, 90(5), pp. 0587011-0587014.-   Deb, S., Pattipati, K. R., Raghavan, V., Shakeri, M., and Shrestha,    R., 1995, “Multi-signal flow graphs: a novel approach for system    testability analysis and fault diagnosis,” IEEE Aerospace and    Electronics Systems Magazine, 10(5), pp. 14-25.-   Dorogovtsev, S. N., Mendes, J. F. F., and Samukhin, A. N., 2001,    “Giant strongly connected component of directed networks,” Physical    Review E—Statistical, Nonlinear, and Soft Matter Physics, 64(2), pp.    0251011-0251014.-   Duarte, F., Arauio, H., and Dourado, A., 1999, “Automatic system for    dirt in pulp inspection using hierarchical image segmentation,”    Computers and Industrial Engineering, 37(1-2), pp. 343-346.-   Erdos, P. and Renyi, A., 1959, “On random graphs,” Publicationes    Mathematicae Debrecen, 6, pp. 290-291. (see Newman et al., 2006)-   Erdos, P. and Renyi, A., 1960, “On the evolution of random graphs,”    Magyar Tud. Akad. Mat. Kutato Int. KozL, 5, pp. 17-61. (see Newman    et al., 2006)-   Erdos, P. and Renyi, A., 1961, “On the strenth of connectedness of a    random graph,” Acta mathematica Academiae Scientiarum Hungaricae,    12, pp. 261-267. (see Newman et al., 2006)-   Erne, O., Walz, T., and Ettemeyer, A., 1999, “Automatic shearography    inspection systems for aircraft components in production,” in Proc.    of SPIE, 3824, pp. 326-328.-   Feng, C., Bhuyan, L. N., and Lombardi, F., 1996, “Adaptive    system-level diagnosis for hypercube multiprocessors,” IEEE    Transactions on Computers, 45(10), pp. 1157-1170.-   Finogenoy, L. V., Beloborodov, A. V., Ladygin, V. I., Chugui, Y. V.,    Zagoruiko, N. G., Gulvaevskii, S. Y., Shul′man, Y. S., Lavrenyuk, P.    I., and Pimenov, Y. V., 2007, “An optoelectronic system for    automatic inspection of the external view of fuel pellets,” Russian    Journal of Nondestructive Testing, 43(10), pp. 692-699.-   Georgilakis, P. S., Katsigiannis, J. A., Valavanis, K. P., and    Souflaris, A. T., 2006, “A systematic stochastic Petri net based    methodology for transformer fault diagnosis and repair actions,”    Journal of Intelligent and Robotic Systems: Theory and Applications,    45(2), pp. 181-201.-   Gertler, J., 1998, Fault detection and diagnosis in engineering    systems, New York, Marcel Dekker.-   Godoi, W. C., da Silva, R. R., and Swinka-Filho, V., 2005, “Pattern    recognition in the automatic inspection of flaws in polymeric    insulators,” Insight: Non-Destructive Testing and Condition    Monitoring, 47(10), pp. 608-614.-   Huang, C. K., Wang, L. G., Tang, H. C., and Tarng, Y. S., 2006,    “Automatic laser inspection of outer diameter, run-out taper of    micro-drills,” Journal of materials processing Technology, 171(2),    pp. 306-313.-   Jeong, H., 2003, “Complex scale-free networks,” Physica A:    Statistical Mechanics and Its Applications, 321, pp. 226-237.-   Jiang, T. and Nevill Jr, G. E., 2002, “Conflict cause identification    in web-based concurrent engineering design system,” Concurrent    Engineering Research and Applications, 10(1), pp. 15-26.-   Khan, U. S., Igbal, J., and Khan, M. A., 2005, “Automatic inspection    system using machine vision,” in Proc. of 34^(th) Applied Imagery    Pattern Recognition Workshop, pp. 210-215.-   Klein, B. D., 1997, “How do actuaries use data containing errors?    Models of error detection and error correction,” Information    Resources Management Journal, 10(4), pp. 27-36.-   Klein, M., 1992, “Detecting and resolving conflicts among    cooperating human and machine-based design agents,” Artificial    Intelligence in Engineering, 7(2), pp. 93-104.-   Lara, M. A. and Nof, S. Y., 2003, “Computer-supported conflict    resolution for collaborative facility designers,” International    Journal of Production Research, 41(2), pp. 207-233.-   Li, X., Zhou, X., and Ruan, X., 2002, “Conflict management in    closely coupled collaborative design system,” International Journal    of Computer Integrated Manufacturing, 15(4), pp. 345-352.-   Ljung, L., 1999, System identification: theory for the user, 2^(nd),    Upper Saddle River, N.J.: Prentice Hall PTR.-   Moganti, M. and Ercal, F., 1995, “Automatic PCB inspection systems,”    IEEE Potentials, 14(3), pp. 6-10.-   Molloy, M. and Reed, B., 1995, “A critical point for random graphs    with a given degree sequence,” Random Structures and Algorithms,    6(2-3), pp. 161-179.-   Najjari, H. and Steiner, S. J., 1997, “Integrated sensor-based    control system for a flexible assembly,” Mechatronics, 7(3), pp.    231-262.-   Newman, M. E. J., 2003, “The Structure and Function of Complex    Networks,” SIAM Review, 45(2), pp. 167-256.-   Newman, M. E. J., Strogatz, S. H., and Watts, D. J., 2001, “Random    graphs with arbitrary degree distributions and their applications,”    Physical Review E—Statistical, Nonlinear, and Soft Matter Physics,    64(2), 0261181-02611817.-   Newman, M. E. J., Barabasi, A. L., and Watts, D. J., 2006, The    structure and dynamics of networks, Princeton University Press,    Princeton, N.J.-   Ni, C. W., 2004, “Automatic inspection of the printing contents of    soft drink cans by image processing analysis,” in Proc. of SPIE,    3652, pp. 86-93.-   Nof, S. Y., 2003, “Design of effective e-Work: review of models,    tools, and emerging challenges,” Production Planning and Control,    14(8), pp. 681-703.-   O'Hare, G. M. P. and Jennings, N., 1996, Foundations of distributed    artificial intelligence, New York, Wiley.-   Pattipati, K. R. and Alexandridis, M. G., 1990, “Application of    heuristic search and information theory to sequential fault    diagnosis,” IEEE Transactions on Systems, Man and Cybernetics,    20(4), pp. 872-887.-   Pattipati, K. R. and Dontamsetty, M., 1992, “On a generalized test    sequencing problem,” IEEE Transactions on Systems, Man and    Cybernetics, 22(2), pp. 392-396.-   Price, D. J. DE S., 1965, “Networks of scientific papers,” Science,    149, pp. 510-515. (see Newman et al., 2006)-   Raghavan, V., Shakeri, M., and Pattipati, K., 1999a, “Optimal and    near-optimal test sequencing algorithms with realistic test models,”    IEEE Transactions on Systems, Man, and Cybernetics Part A: Systems    and Humans, 29(1), pp. 11-26.-   Raghavan, V., Shakeri, M., and Pattipati, K., 1999b, “Test    sequencing algorithms with unreliable tests,” IEEE Transactions on    Systems, Man, and Cybernetics Part A: Systems and Humans, 29(4), pp.    347-357.-   Raich, A. and Cinar, A., 1996, “Statistical process monitoring and    disturbance diagnosis in multivariable continuous processes,” AlChE    Journal, 42(4), pp. 995-1009.-   Rau, H. and Wu, C.-H., 2005, “Automatic optical inspection for    detecting defects on printed circuit board inner layers,”    International Journal of Advanced Manufacturing Technology,    25(9-10), pp. 940-946.-   Rezai, M., Ito, M. R., and Lawrence, P. D., 1995a, Modeling and    simulation of hybrid control systems by Global Petri Nets, Seattle,    Wash., USA, IEEE.-   Rezai, M., Lawrence, P. D., and Ito, M. R., 1995b, Analysis of    faults in hybrid systems by global Petri nets, Vancouver, BC, Can,    IEEE, Piscataway, N.J., USA.-   Rezai, M., Lawrence, P. D., and Ito, M. B., 1997, Hybrid modeling    and simulation of manufacturing systems, Los Angeles, Calif., USA,    IEEE.-   Sampath, M., Sengupta, R., Lafortune, S., Sinnamohideen, K., and    Teneketzis, D., 1995, “Diagnosability of discrete-event systems,”    IEEE Transactions on Automatic Control, 40(9), pp. 1555-1575.-   Shakeri, M., Pattipati, K. R., Raghavan, V., Patterson-Hine, A., and    Kell, T., 1995, Sequential test strategies for multiple fault    isolation, Atlanta, Ga., USA, IEEE, Piscataway, N.J., USA.-   Shakeri, M., Raghavan, V., Pattipati, K. R., and Patterson-Hine, A.,    2000, “Sequential testing algorithms for multiple fault diagnosis,”    IEEE Transactions on Systems, Man & amp; Cybernetics, Part A:    Systems & amp; Humans, 30(1), pp. 1-14.-   Shiau, J.-Y., 2002, A formalism for conflict detection and    resolution in a multi-agent system, United States, Arizona, Arizona    State University.-   Shin, M., Cha, Y., Ryu, K., and Jung, M., 2006, “Conflict detection    and resolution for goal formation in the fractal manufacturing    system,” International Journal of Production Research, 44(3), pp.    447-465.-   Solomonoff, R. and Rapoport, A., 1951, “Connectivity of random    nets,” Bulletin of Mathematical Biophysics, 13, pp. 107-117. (see    Newman et al., 2006)-   Tadic, B., 2001, “Dynamics of directed graphs: the world-wide Web,”    Physica A: Statistical Mechanics and Its Applications, 293, pp.    273-284.-   Tu, F., Pattipati, K., Deb, S., and Malepati, V. N., 2002, Multiple    fault diagnosis in graph-based systems, Orlando, Fla., United    States, The International Society for Optical Engineering.-   Tu, F. and Pattipati, K. R., 2003, “Rollout strategies for    sequential fault diagnosis,” IEEE Transactions on Systems, Man, and    Cybernetics Part A: Systems and Humans, 33(1), pp. 86-99.-   Tu, F., Pattipati, K. R., Deb, S., and Malepati, V. N., 2003,    “Computationally efficient algorithms for multiple fault diagnosis    in large graph-based systems,” IEEE Transactions on Systems, Man,    and Cybernetics Part A: Systems and Humans, 33(1), pp. 73-85.-   Ushio, T., Onishi, I., and Okuda, K., 1998, Fault detection based on    Petri net models with faulty behaviors, San Diego, Calif., USA,    IEEE, Piscataway, N.J., USA.-   Velasquez, J. D., Lara, M. A., and Nof, S. Y., 2008, “Systematic    resolution of conflict situations in collaborative facility design,”    Int. J. of Production Economics, 116(1), pp. 139-53.-   Watts, D. J. and Strogatz, S. H., 1998, “Collective dynamics of    ‘small-world’ networks,” Nature, 393(6684), pp. 440-442.-   Wenbin, Q. and Kumar, R., 2006, “Decentralized failure diagnosis of    discrete event systems,” IEEE Transactions on Systems, Man & amp;    Cybernetics, Part A: Systems & amp; Humans, 36(2), pp. 384-395.-   Wilson, J. C. and Berardo, P. A., 1995, “Automatic inspection of    hazardous materials by mobile robot,” in Proc. of the IEEE    International Conference on Systems, Man and Cybernetics, 4, pp.    3280-3285.-   Yang, C.-L. and Nof, S. Y., 2004a, “Design of a task planning    conflict and error detection system with active protocols and    agents,” PRISM Research Memorandum, School of Industrial    Engineering, Purdue University, West Lafayette, Ind., U.S.A.,    2004-P1.-   Yang, C.-L. and Nof, S. Y., 2004b, “Analysis, detection policy, and    performance measures of detection task planning errors and    conflicts,” PRISM Research Memorandum, School of Industrial    Engineering, Purdue University, West Lafayette, Ind., U.S.A.,    2004-P2.-   Yang, C.-L., Chen, X., and Nof, S. Y., 2005, “Design of a production    conflict and error detection model with active protocols and    agents,” 18th International Conference on Production Research,    Italy.-   Zad, S. H., Kwong, R. H., and Wonham, W. M., 2003, “Fault diagnosis    in discrete-event systems: framework and model reduction,” IEEE    Transactions on Automatic Control, 48(7), pp. 1199-1212.-   Zhou, M. and DiCesare, F., 1993, Petri net synthesis for discrete    event control of manufacturing systems, Boston, Kluwer Academic.-   Zhou, M., DiCesare, F., and Desrochers, A. A., 1992, “A hybrid    methodology for synthesis of Petri net models for manufacturing    systems,” IEEE Transactions on Robotics and Automation, 8(3), pp.    350-361.

GLOSSARY

-   •: Constraint-   •a: Pre-set of a)-   ( )^(P): Cooperate and/or coordinate to provide-   ( )^(R): Cooperate and/or coordinate to receive-   (h_(i), h_(j)): An edge-   -: Exclusive relationship-   →: Inclusive relationship-   : Four types of collaboration-   : Causation between CEs-   : Dissatisfy a constraint-   : Satisfy a constraint-   γ: Exponent of a scale-free network-   η: Fitness parameter-   : Co-U state-   θ(r,t): Co-net state-   λ: Parameter in the fitness distribution-   π(i,t): A set of constraints-   ρ(η): Fitness distribution-   Ω(r,t): A set of Co-Us-   a: Index of CEPD logic execution-   a•: Post-set of a-   c: Constant-   con(r,t): Constraint-   d: Degree of a node-   d: Mean degree-   dA: Mean damage per time unit caused by a CE-   e-activities: Electronic activities-   e-Work: Electronic Work-   f: A flow relation-   i: Index of Co-U-   j: Number of times Step 5 in Table 4.5 is executed-   k: Maximum number of tokens in any place-   l: Distance between nodes-   m: Number of CEs prognosed-   n: Size of a network-   n′: Number of nodes each of which requires detection-   n″: Number of nodes left in the undirected RN after j steps-   n(r,t): Co-net-   p: A place-   p: Probability-   p_(both): Probability of undirected link-   p_(c): Critical probability-   p_(g): Portion of nodes in the giant component-   p_(in): Probability of incoming directed link-   p_(out): Probability of outgoing directed link-   p_(CE): Probability of a node having a CE-   r: Index of constraint and Co-net-   r: Reliability of a detection technique-   t: Time-   t_(b): Beginning time of an invariant model-   t_(c): Current time-   t _(d): Mean detection time of a detection technique-   t_(e): End time of an invariant model-   t _(i): Mean time of one information transmission-   tr: A transition-   u: Firing counts-   u(i,t): Co-U-   x: A place invariant or a P-invariant-   AP: CEPD approach-   BECN: Bose-Einstein condensation network-   C: Incidence matrix-   C table: Constraint table-   C(n(r,t)): A conflict-   Co-net: Coordination network-   Co-U: Cooperative Unit-   CA: Coverage ability-   CE: Conflict and Error-   CE(r,t): A CE-   CECA: CE Coverage ability-   CEDA: Conflict and Error Detection Agent-   CEDM: Conflict and Error Detection Mode-   CEDP: Conflict and Error Detection Protocol-   CEPA: CE prognostics ability-   CEPD: Conflict and Error Prevention and Detection-   CP: Corporate and/or Coordinate to Provide-   CR: Corporate and/or Coordinate to Receive-   DG: Directed Graph-   E: A set of fault propagation edges-   E(u(r,i,t)): An error-   E-PERT: Extended Project Estimation and Review Technique-   F: A set of flow relations-   FDI: Fault Detection and Isolation-   FIFO: First-In-First-Out-   FSM: Finite State Machine-   M: Marking-   M(p): Number of tokens in place p-   : M-enabled-   M₀: Initial marking Z-   MDP: Markov Decision Problem-   MM: Many-to-Many-   MO: Many-to-One-   N: A place/transition net-   N: The set of natural numbers-   N(Ω(r,t)): Number of Co-Us-   NET: Network-   OO: One-to-One-   OM: One-to-Many-   P: A finite set of places-   |P|: Total number of places in a place/transition net-   PA: Prognostics ability-   PDA: Prognostics and Diagnostics Agent-   PRISM: Production, Robotics, and Integration Software for    Manufacturing and Management-   P/T: Place/Transition-   R table: Constraint relationship table-   RN: Random network-   SFN: Scale-free network-   T: Task-   T: A finite set of transitions-   T: End time of an invariant model-   TD: Total CE damage-   TEAMS: Testability Engineering And Maintenance System-   TE^(a): End time of CEPD logic-   TI: Task Independent-   TS^(a): Start time of CEPD logic-   TT: Total CEPD time-   V: A set of components or tests-   W: A set of arc weights-   z: The set of integers

The invention claimed is:
 1. A system for preventing and detectingconflicts and errors through prognostics and diagnostics, comprising:multiple autonomous agents or control units; each receiving a list ofparameters associated with agents or control units with which thecurrent agent or control unit has an inclusive, mutually exclusive, orother relationship, each modeling a first constraint; each performingdetection, including; a) identifying any conflict or error associatedwith the first constraint; b) marking the first constraint to identifywhether any conflict or error is identified; c) communicating a messageto another of the agents or control units, the message includinginformation determined at least in part based on whether any conflict orerror is identified; d) performing at least one of diagnosis andprognosis in the agent or control unit based at least in part on thefirst constraint, including identifying each constraint having a firstpredefined relationship with the first constraint and marking theidentified constraint; and wherein the predetermined relationshipincludes a condition wherein a time associated with the identifiedconstraint is the same or earlier than a time associated with theconstraint marked in step b).
 2. The system of claim 1, furthercomprising: identifying at least a second constraint associated with thefirst constraint, and wherein step c) further comprises communicatingthe message to an agent or control unit associated with the secondconstraint.
 3. The system of claim 2, wherein the message comprisesinformation identifying whether a conflict or error was identified. 4.The system of claim 1, wherein the predetermined relationship includes acondition wherein a time associated with the identified constraint islater than a time associated with the constraint marked in step b). 5.The system of claim 1, wherein step d) further comprises: identifyingeach constraint having a second predefined relationship with the firstconstraint; and marking the identified constraint.
 6. The system ofclaim 1, wherein step a) further comprises receiving a message fromanother of the agents and control units identifying whether a conflictor error exists.
 7. A system for preventing and detecting conflicts anderrors through prognostics and diagnostics, comprising: multipleautonomous agents or control units; each receiving a list of parametersassociated with agents or control units with which the current agent orcontrol unit has an inclusive, mutually exclusive, or otherrelationship, each modeling a first constraint; each performingdetection, including: a) identifying any conflict or error associatedwith the first constraint; b) marking the first constraint to identifywhether any conflict or error is Identified; c) communicating a messageto another of the agents or control units; the message includinginformation determined at least in part based on whether any conflict orerror is identified; wherein: step a) further comprises receiving amessage from another of the agents and control units identifying whethera conflict or error exists; step a) further comprises, if the receivedmessage identifies that no conflict exists, then identifying a secondconstraint associated with the first constraint; and step b) furthercomprises marking the first constraint to indicate no conflict or erroridentified.
 8. A system for preventing and detecting conflicts anderrors through prognostics and diagnostics; comprising: multipleautonomous agents or control units; each receiving a list of parametersassociated with agents or control units with which the current agent orcontrol unit has an inclusive, mutually exclusive, or otherrelationship, each modeling a first constraint; each performingdetection, including: a) identifying any conflict or error associatedwith the first constraint; b) marking the first constraint to identifywhether any conflict or error is identified; c) communicating a messageto another of the agents or control units, the message includinginformation determined at least in part based on whether any conflict orerror is identified; wherein: step a) further comprises receiving amessage from another of the agents and control units identifying whethera conflict or error exists; step a) further comprises, if the receivedmessage identifies that a conflict or error exists, then identifying asecond constraint associated with the first constraint; and step b)further comprises marking the first constraint to indicate that aconflict or error has been identified.